Ускорение телефона на андроид. Ускорение Android: какие методы действительно работают

ОС Андроид имеет множество параметров и при этом проста в настраивании, что является немаловажным преимуществом перед остальными мобильными системами. Поэтому обычный пользователь не столкнётся с риском навредить своему устройству, если, конечно не использовать root права.

Скорость работы – наиболее значимая составляющая работы вашего андроид устройства. Поэтому многие инстересуются, как ускорить Андроид устройство просто и быстро. В данной статье вы узнаете простой способ, как ускорить android без рутирования девайса или использования сторонних программ.

Как ускорить работу Андроида, используя инструменты разработчика

Описываемый метод поможет заметно ускорить быстродействие андроида и является наиболее простым из существующих. Ускорение андроида будет работать и на старых телефонах, и на устройствах нового образца, поэтому вы запросто сможете оживить старый Nexus 4, узнаете как ускорить планшет на андроид, или тот же смартфон линейки Samsung Galaxy.

Шаг 1: Доступ к скрытым настройкам разработчика

Эти настройки первоначально скрыты от пользователя. Чтобы они появились, вам нужно в настройках телефона найти пункт «О телефоне», который обычно находится в самом низу списка. В открывшемся списке вам нужно отыскать пункт «Номер сборки» и нажать на него 7 раз. Данная манипуляция приведёт к разблокировке «Режима разработчика».

Шаг 2: Работа с настройками разработчика, чтобы ускорить Андроид

После вышеперечисленных действий среди основных настроек должен появится пунктик «Режим разработчика» — он то нам и нужен. В появившемся окне вам нужно обнаружить следующие строчки:

  • Шкала анимации окна
  • Шкала анимации перехода
  • Скорость анимации

Каждая из вышеперечисленных настроек должна быть установлена в значение «1х» по умолчанию.

Шаг 3: Как ускорить работу андроида

Всё, что вам нужно сделать – это тапнуть по каждой из этих строчек и изменить исходное значение на «.5х». Чтобы основательно увеличить скорость, можно изменить это значение на «Отключение анимации», что в свою очередь приведёт к отключению всех анимаций указанного типа. Описанное выше небольшое изменение уменьшит время, которое уходит на переключение между приложениями, их открытие и даже на открытие меню с приложениями, что ещё больше повлияет на ускорение работы андроид.

Это безвредное и полностью безопасное средство увеличения скорости работы ускорение телефона на андроид безо всякого рута и вспомогательных программ. Все необходимые настройки есть изначально, просто на некоторых из них не акцентируется внимание, а некоторые скрыты для удобства, чтобы неподготовленный пользователь что-нибудь не испортил.

Ускорение Андроида с помощью компилятора ART

Глубоко внутри вашего смартфона с выходом версии 4.4 KitKat появилась очень интересная вещь. Скорее даже не вещь, а среда. Но она позволит существенно ускорить андроид, который работает на этой прошивке или на прошивке выше. Как это сделать, расскажу ниже.

Эта интересная вещь называется Android Runtime (ART). Она является приемником среды Davlik. И одно, и другое — компиляторы, однако если компилятор Dalvik обрабатывает приложения только тогда, когда они были запущены (компилятор текущего времени), то компилятор ART обрабатывает приложение сразу после его установки (досрочный компилятор). Пусть это и приводит к увеличению размера приложения, однако в плюсе остаётся быстродействие телефона и срок службы батареи.

Заходим в «Для разработчика», нажимаем на «Выбор среды выполнения» и выбираем ART вместо Davlik.

После этого перезагрузите ваш телефон и после перезагрузки не трогайте его пару минут, т.к. телефон в фоновом режиме будет преобразовывать все установленные вами приложения.

Однако, не все 100% приложений совместимы с ART-компилятором. Это ощущается на версии 4.4 KitKat, на версии 5.0 Lolipop подобной проблемы нет.

Кроме режима разработчика существуют и другие методы, которые могут быть использованы для увеличения скорости девайса, однако, только лишь описанный метод может гарантировать вам безопасность без малейшего шанса негативных последствий.

Если у вас имеются любые вопросы о том, как ускорить телефон андроид, или же вам необходима помощь – оставляйте ваши комментарии, мы обязательно поможем.

Помните ли вы тот момент, когда приобрели свой Android-смартфон? Все работало так быстро и так гладко, что даже верилось с трудом. Теперь, когда прошло некоторое время, работа устройства значительно замедлилась. Причем, настолько, что это начинает раздражать - ведь гаджет тормозит даже тогда, когда вам срочно надо открыть ваше любимое приложение. Можно ли как-то ускорить работу Андроида, и что для этого нужно делать?

Прежде всего, не торопитесь искать новый телефон. Давайте сначала постараемся вернуть резвость старому привычному смартфону. Предлагаемые ниже способы совсем не сложные, и справится с ними любой, даже начинающий пользователь. Ну, а если уж никакие реанимационные меры не помогут, придется все-таки отправляться в салон за новым аппаратом. Итак, вот что вам нужно сделать.

Обновление устройства


Когда вы в последний раз обновляли свое устройство? Чтобы ваш смартфон работал как можно более плавно, вам нужно быть в курсе последних версий программного обеспечения. Вы можете легко проверить наличие обновлений на вашем устройстве, открыв основные настройки и нажав «О программе» - нужная информация находится в разделе «Обновление программного обеспечения ». Более подробно о том, на разных устройствах Вы можете ознакомиться в разделе «Инструкции».

Ревизия набора виджетов


Будьте внимательны при заполнении панелей главного экрана: избирательно относитесь к предлагаемым ярлыкам и виджетам . Виджеты забирают определенное количество вычислительной мощности и влияют на срок автономной работы смартфона, потребляя энергию аккумулятора. Поэтому лучше ограничить их количество. Удалите те, которые вы редко используете, и, скорее всего, заметите улучшение производительности. Если у вас хватит решительности расстаться с живыми обоями, это тоже будет здорово. Поставьте обычные, статичные - они тоже могут быть и красивыми, и оригинальными.

Удаление приложений


Наверняка на вашем смартфоне есть приложения, установленные когда-то давно и прочно забытые. Возьмите себе за правило удалять неиспользуемые на протяжении длительного времени приложения - это может ускорить работу устройства. Процесс удаления прост: зайдите в «Настройки» на своем телефоне, найдите там категорию «Приложения» и откройте в ней опцию «Управление приложениями». На вкладках вверху будут показаны загруженные приложения, запущенные приложения, все приложения и приложения на SD-карте. Такая наглядность позволяет легко найти приложения, которые вам не нужны.

Отключить анимацию


В ОС Android есть скрытая настройка, которая даст вам доступ к нескольким дополнительным командам (« »). Перейдите в раздел «Настройки» -> «О программе» -> «Номер сборки» и коснитесь этого номера семь раз. Теперь у вас есть доступ к меню для разработчиков. Вы сможете увидеть множество действий, ранее вам недоступных, но если вы не опытный разработчик, лучше оставьте их в покое. Найдите только нужную в данный момент опцию Window Animation Scale и выберите «Отключить анимацию ». Это еще один шаг к улучшению производительности вашего устройства.

Переключение на АRТ

Если на вашем телефоне используется Android 5.0 Lollipop или выше, вы используете рабочую среду ART. Если же смартфон работает на Android 4.4 KitKat или более ранних версиях операционной системы, то используется среда DAVILIK по умолчанию. Однако возможность переключиться на более резвый вариант АRТ у вас имеется, и опция скрыта в разделе для разработчиков. Прокрутите вниз раздел "Приложения", найдите там опцию "Выбрать время выполнения", откройте и выберите там "Использовать АRТ ".

Очистка пространства в памяти смартфона


Время от времени необходимо чистить свое устройство от лишней информации и контента. Вспомните, сколько фотографий хранится на смартфоне. Зачем столько? Сохраните все фото в облаке или на физическом носителе, а в памяти аппарата оставьте только те, которые вам особенно дороги или могут пригодиться в любой момент для каких-либо определенных целей. Откройте папку «Загрузки ». Вы знаете, что всё нужное из неё уже продублировано на смартфоне? В большинстве случаев эту папку можно полностью очистить.

Обязательно зайдите на страницу «Память» в «Настройках» и нажмите «Другое». Эта категория включает в себя данные приложений, файлы, загружаемые из Интернета через Bluetooth и системные файлы Android. Выберите опцию "Проводник", с его помощью найдите и определите файлы, которые вам не нужны. Однако, если вы не знаете, для чего предназначен файл, не удаляйте его - он может оказаться важным для работы аппарата!

Очистка кэш


Чем дольше и чаще вы используете приложение, тем больше данных кэшируется для повышения производительности приложения. Но то, что хорошо для приложения, может быть плохо для других программ и производительности самого устройства. Хорошей новостью является то, что вы можете быстро очистить кэш. Откройте настройки Android и перейдите на страницу памяти устройства. Прокрутите список вниз, пока не найдете пункт "Данные в кэше ". Нажмите на него - появится всплывающее окно с запросом о том, хотите ли вы очистить все кэшированные данные. Подтвердите очистку.

Сброс к заводским настройкам


Иногда лучший способ вдохнуть новую жизнь в Android-устройство - это выполнить Factory Reset (также известный как hard reset, или сброс к заводским настройкам). Этот способ повышения производительности особенно эффективен для старых телефонов. Однако учтите, что при выполнении сброса настроек все ваши данные будут удалены. Поэтому перед тем, как сделать этот шаг, вам нужно будет сделать всех ваших файлов. Можете использовать то, что фабрика Factory Reset не удаляет информацию с установленной в слота аппарата карты памяти microSD. Как вариант, выполните резервное копирование на эту карту. Чтобы выполнить сброс смартфона к заводским настройкам, выберите «Настройки» -> «Резервное копирование и сброс» -> «Сброс настроек».

Играете в игры на планшете, смартфоне? Тогда узнайте как увеличить производительность игр на Андроид.

При активации параметра Force 4x MSAA в параметрах разработчика Android, вы можете наслаждаться лучшей игровой производительностью. Это заставит ваш телефон использовать 4x мультисэмпла сглаживание в OpenGL 2.0 играх и приложениях.

Однако, включение этого параметра может истощить батарею вашего смартфона быстрее.

Скрытое меню опций разработчика Андроид содержит множество дополнительных опций. Тем не менее, эти варианты могут также принести пользу обычным пользователям, этим мы и воспользуемся.

Прежде чем включить эту функцию, необходимо для начала попасть в меню опций разработчика.

Как получить доступ к меню разработчика

Для этого вам необходимо открыть окно с .

Спуститься в самый низ и найти пункт «О телефоне».

Здесь находите «Номер сборки» вашей модели и несколько раз тапните по нему.

Сначала появиться оповещение «Вы в трех шагах оттого, чтобы стать разработчиком». Это сообщение появляется не в каждом случае.

Еще нажимаете несколько раз и появляется сообщение «Сейчас вы разработчик». Это сообщение может появиться сразу после нескольких кликов (приблизительно 7).

Теперь все готово для изменения настроек способных изменить производительность телефона.

В «Настройках» появился новый пункт «Для разработчиков».

Для настроек производительности ищите пункт «Force MSAA 4х». Эта функция заставит Андроид использовать 4х мультисемпла сглаживание в и приложениях OpenGL 2.0.

Важная заметка

1. Включение этой опции дает повышенную производительность, которая также зависит от вашего устройства и от игровых приложений.

2. Повышенная производительность в большей степени поглощает заряд батареи. Рекомендуется использовать предварительно зарядив ваше устройство.

3. После того как закончите играть не забудьте вернуть настройку в начальное положение - выключите.

Блуждая по форумам и разного рода сайтам, посвященным Android, мы постоянно сталкиваемся с советами, как увеличить производительность смартфона. Одни рекомендуют включить swap, другие - добавить специальные значения в build.prop, третьи - изменить переменные ядра Linux. Подобного рода рецептов в разных вариантах можно найти огромное количество, что на XDA, что на 4PDA. Но работают ли они на самом деле?

Введение

Пользуясь самыми разными *nix-системами на протяжении последних десяти лет, я всегда удивлялся, с каким упорством некоторые, казалось бы, грамотные пользователи смартфонов пытаются впихнуть общественности свои идеи оптимальной настройки Android и лежащего в его основе ядра Linux. И ладно бы дело ограничивалось легким тюнингом подсистемы управления виртуальной памятью или включением экспериментальных опций. Нет, обычно нам предлагают применить длиннющие скрипты, изменяющие буквально каждую переменную ядра, перемонтирующие файловые системы с разными странными опциями, включающие swap, активирующие различные системные демоны и выполняющие еще миллиарды различных операций.

Нет, ну можно, конечно, предположить, что ядро Linux, Android и фирменные прошивки для смартфонов разрабатывают безграмотные идиоты, работу которых необходимо кардинальным образом переделывать, но на практике почему-то оказывается, что самые известные инструменты тюнинга, опубликованные на XDA, - это не что иное, как сборная солянка из огромного количества разрозненных рекомендаций, придуманных непонятно кем и неизвестно зачем. Абсурд ситуации доходит того, что в этих инструментах можно обнаружить строки, без изменений скопированные из скриптов для увеличения производительности Linux-сервера в условиях высоких нагрузок (я не шучу, взгляни на содержимое известного скрипта ThunderBolt!).

В целом ситуация более чем запутанная. Все советуют всё, никто не советует ничего, а те, кто что-то понимает, сидят и, попивая чай, смеются над происходящим балаганом. Но попробуем все-таки разгрести всю эту кашу.

Swap

Начнем со swap - самой абсурдной идеи из всех, что только можно придумать для применения в смартфонах. Ее смысл в том, чтобы создать и подключить файл подкачки, за счет чего удастся освободить полезное пространство в оперативной памяти. Сама по себе идея, конечно, здравая, но только если речь идет о сервере, которому интерактивность никуда не упирается. На смартфоне регулярно используемый файл подкачки приведет к неиллюзорным лагам, возникающим вследствие промахов мимо кеша, - достаточно представить, что будет, если приложение попытается отобразить одну из своих пиктограмм, а она окажется в свопе, который придется вновь загружать с диска, предварительно освободив место путем помещения в своп данных другого приложения. Ужас.

Некоторые юзеры могут возразить, что на самом деле после включения swap никаких проблем не возникает, но за это надо благодарить механизм lowmemorykiller, который регулярно убивает особо раздувшиеся и давно не используемые приложения. Благодаря ему девайс с 1 Гб памяти может никогда и не дойти до необходимости сброса данных в своп. Он же и является причиной того, почему в отличие от Linux-десктопа в Android своп не нужен.

Вердикт: очень глупая идея, реализация которой чревата серьезными лагами.

zRAM

Swap действительно очень медленный, и даже на десктопе его существование зачастую неоправданно, но что, если обмануть систему? Создадим виртуальный диск прямо в оперативке с встроенной функцией сжатия данных, подключим его как swap - и вуаля. Функция сжатия данных довольно дешева даже для современных мобильных процессоров, поэтому мы сможем расширить размер оперативки практически без потерь производительности.

Идея настолько правильная, что даже Google рекомендует применять zRAM для основанных на KitKat устройствах в том случае, если объем оперативки не превышает 512 Мб. Загвоздка только в том, что способ работает лишь для современных бюджетников, то есть устройств, основанных на многоядерных бюджетных процах от какой-нибудь MTK и 512 Мб оперативки. В этом случае поток шифрования можно вынести на отдельное ядро и вообще не париться о производительности.

На устаревших устройствах с одним ядром, для которых «гуру форумов» и рекомендуют применение данной технологии, мы вновь получим лаги, причем в довольно большом количестве. То же, кстати, относится и к технологии KSM (Kernel SamePage Merging), которая позволяет объединять одинаковые страницы памяти, освобождая таким образом пространство. Она также рекомендована Google, но на старых девайсах приводит к еще большим лагам, что вполне логично, учитывая постоянно активный ядерный поток, который непрерывно ходит по памяти в поисках дубликатов страниц (а так ли много этих дубликатов на самом деле?).

Вердикт: зависит от устройства, в большинстве случаев замедляет систему.

Seeder

В свое время это приложение наделало много шума и породило множество аналогов. В Сети появилось огромное количество сообщений о якобы феноменальном приросте производительности смартфона после его установки. Доморощенные сборщики кастомных прошивок начали включать его в свои сборки, а автор был объявлен спасителем. И все это при том, что Seeder не выполнял никаких грязных хаков, а просто исправлял один глупый баг Android.

Если вкратце, то баг состоял в том, что некоторые высокоуровневые компоненты среды исполнения Android активно использовали файл /dev/random для получения энтропии/соли. В какие-то моменты буфер /dev/random опустошался, и система оказывалась заблокирована до момента его заполнения необходимым количеством данных. А так как заполнялся он тем, что поступало с разных датчиков, кнопок и сенсоров смартфона, то времени на эту процедуру уходило столько, что пользователь успевал заметить лаг.

Для решения этой проблемы автор Seeder взял Linux-демон rngd, скомпилировал его для Android и настроил так, чтобы он брал случайные данные из гораздо более быстрого (но и намного более предсказуемого) /dev/urandom и каждую секунду сливал их в /dev/random, не позволяя последнему истощиться. Как результат - система никогда не испытывала недостатка в энтропии и спокойно работала.

Данный баг был закрыт Google еще в Android 3.0, и, казалось бы, нам незачем вспоминать о Seeder. Но дело в том, что приложение с тех пор активно развивалось и даже сегодня рекомендуется многими «экспертами» для применения. Более того, у приложения появилось несколько аналогов (например, sEFix), а многие создатели скриптов/инструментов для ускорения до сих пор включают подобную функциональность в свои творения. Иногда это тот же самый rngd, иногда - демон haveged, иногда просто симлинк /dev/urandom на /dev/random.

Все, кто пробовал, наперебой кричат об эффективности решения, однако, если верить Рикарду Серкейре (Ricardo Cerqueira) из компании Cyanogen, в современных версиях Android /dev/random используется всего тремя компонентами: libcrypto (для шифрования SSL-соединений, генерации ключей SSH и так далее), wpa_supplicant/hostapd (для генерации WEP/WPA-ключей) и несколькими библиотеками для генерации случайных ID при создании файловых систем ext2/3/4.

Эффективность приложения в современном Android, по его мнению, связана вовсе не с пополнением пула /dev/random, а с тем, что rngd постоянно пробуждает устройство и заставляет его повышать частоту процессора, что позитивно сказывается на производительности и негативно на батарее.

Вердикт: плацебо.

Odex

Стоковые прошивки смартфонов всегда одексированы. Это значит, что наряду со стандартными для Android пакетами приложений в формате APK в каталогах /system/app/ и /system/priv-app/ (начиная с KitKat) также находятся одноименные файлы с расширением odex. Они содержат так называемый оптимизированный байт-код приложения, уже прошедший через верификатор и оптимизатор виртуальной машины и записанный в обособленный файл (это делается с помощью утилиты dexopt).

Смысл существования файлов odex в том, чтобы разгрузить виртуальную машину и таким образом ускорить запуск приложений (стоковых). С другой стороны, файлы odex мешают вносить в прошивку модификации, создают проблемы с обновлением, и по этой причине многие кастомные ROM’ы (включая CyanogenMod) распространяются без них. Вернуть (точнее, сгенерировать) файлы odex можно разными способами, в том числе с помощью простых утилит/скриптов вроде Odexer Tool. Пользоваться ими легко, и многие «эксперты» советуют это делать.

Проблема только в том, что это чистейшее плацебо. Не обнаружив odex-файлов в каталоге /system, система сама создаст их при следующей загрузке и поместит в каталог /system/dalvik-cache/. Именно этим она занимается, когда при загрузке новой прошивки на экране появляется сообщение «Идет оптимизация приложений…». В отношении приложений из маркета это тоже, кстати, работает. Но на этапе установки софта.

Вердикт: плацебо.

Твики lowmemorykiller

Реализация многозадачности в Android сильно отличается от других мобильных ОС и основана на классической модели. Приложения могут спокойно работать в фоне, в системе нет никаких ограничений на их количество, функциональность при переходе к фоновому исполнению не урезается. Все, как на десктопе, за исключением одной детали: система имеет полное право убить любое фоновое приложение в случае недостатка оперативной памяти или (начиная с KitKat) излишней жадности приложения к ресурсам.

Этот механизм, названный lowmemorykiller, был придуман для того, чтобы, сохраняя черты полноценной многозадачной ОС, Android мог нормально жить в условиях ограниченного объема памяти и отсутствующего swap-раздела. Пользователь может спокойно запускать любые приложения и быстро переключаться между ними, а система сама позаботится о завершении давно не используемых приложений и о том, чтобы в устройстве всегда оставалась свободная память.

В первые годы существования Android назначение данного механизма для многих пользователей было непонятным, поэтому стали популярными так называемые таск-киллеры - приложения, которые время от времени просыпались и завершали все фоновые приложения. Профитом в данном случае считалось большое количество свободной оперативки, что воспринималось как плюс, хотя никаких плюсов в этом, конечно же, не было. Зато было много минусов в виде более долгого переключения между приложениями, повышенного расхода заряда батареи и проблем c пробуждением владельца по утрам (будильник тоже убивался).

Со временем понимание принципов многозадачности пришло, и от таск-киллеров постепенно отказались. Однако их быстро сменил другой тренд - тюнинг самого механизма lowmemorykiller (например, с помощью приложения MinFreeManager). Основная идея метода в том, чтобы приподнять границы заполнения оперативной памяти, при достижении которых система начнет убивать фоновые приложения. Этакий способ «и нам и вам», который позволяет освободить немного памяти штатными средствами, не нарушая идей многозадачности Android.

Но к чему это в итоге приводит? Допустим, стандартные значения границ заполнения памяти - это 4, 8, 12, 24, 32 и 40 Мб, то есть при достижении свободного объема памяти 40 Мб будет убито одно из кешированных приложений (загружено в памяти, но не запущено, это такая оптимизация Android), при 32 - Content Provider, не имеющий клиентов, 24 - одно из редко используемых фоновых приложений, затем в расход идут сервисные процессы приложений (например, сервис музыкального проигрывателя), видимые на экране приложения и текущее запущенное приложение. Разница между последними двумя в том, что «текущее» - это приложение, с которым в данный момент имеет дело юзер, а «видимое» - это то, что, например, имеет уведомление в строке состояния или отображает поверх экрана какую-либо инфу.

В целом все это значит, что в смартфоне всегда будет свободно 40 Мб памяти, которых вполне достаточно для того, чтобы вместить еще одно приложение, после чего проснется поток LKM и начнет очистку памяти. Все ОK, все довольны. Система по максимуму использует память. А теперь представим, что будет, если юзер воспользуется советом доморощенного «эксперта» и поднимет эти значения так, что последнее будет составлять, ну, допустим, 100 Мб (обычно повышаются только три последних значения). В этом случае произойдет одна простая вещь: юзер потеряет 100 – 40 = 60 Мб памяти устройства. Вместо того чтобы использовать это пространство для хранения фоновых приложений, что полезно, так как сокращает время переключения на них и заряд батареи, система будет оставлять его свободным непонятно для чего.

Справедливости ради стоит сказать, что тюнинг LKM может быть полезен для девайсов с совсем уж небольшим объемом памяти (меньше 512) и Android 4.X на борту или для временного увеличения порогов. Некоторые разработчики твиков прямо рекомендуют использовать «агрессивные» настройки только в случае запуска тяжелого софта вроде hi-end игр, а все остальное время оставаться на стандартных. В этом действительно есть смысл.

Вердикт: лучше не трогать.

Твики I/O

В скриптах, публикуемых на форумах, можно часто встретить твики подсистемы ввода-вывода. Например, в том же скрипте ThunderBolt! есть следующие строки:

Echo 0 > $i/queue/rotational; echo 1024 > $i/queue/nr_requests;

Первая дает планировщику ввода-вывода понять, что он имеет дело с твердотельным диском, вторая увеличивает максимальный размер очереди ввода-вывода с 128 до 1024 (переменная $i в командах содержит путь к дереву блочного устройства в /sys, например /sys/block/mmcblk0/, скрипт проходит по ним в цикле). Далее по тексту можно встретить следующие строки, относящиеся к планировщику CFQ:

Echo 1 > $i/queue/iosched/back_seek_penalty; echo 1 > $i/queue/iosched/low_latency; echo 1 > $i/queue/iosched/slice_idle;

Далее следует еще несколько строк, относящихся к другим планировщикам (кстати, обрати внимание на совершенно лишние точки с запятой в конце команд). Что во всех этих строках не так? Первые две команды бессмысленны по двум причинам:

  1. Планировщики I/O в современном ядре Linux сами способны понять, с каким типом носителя информации они имеют дело.
  2. Такая длинная очередь ввода-вывода (1024) совершенно бессмысленна на смартфоне. Более того, она бессмысленна даже на десктопе и применяется на высоконагруженных серверах (из рекомендаций по настройке которых она, видимо, и попала в данный скрипт).

Последние три бессмысленны по той простой причине, что для смартфона, где фактически нет разделения приложений по приоритетам на ввод-вывод и нет механических накопителей, лучший планировщик - это noop, то есть простая FIFO-очередь - кто первый обратился к памяти, тот и получил доступ. И у данного планировщика нет каких-то особенных настроек. Поэтому все эти многоэкранные списки команд лучше заменить на один простой цикл:

For i in /sys/block/mmc*; do echo noop > $i/queue/scheduler echo 0 > $i/queue/iostats done

Кроме включения планировщика noop, для всех накопителей он отключает накопление статистики I/O, что также должно позитивно сказаться на производительности (хотя это всего лишь капля в море, которая будет совершенно незаметна).

Еще один твик, который часто можно найти в скриптах тюнинга производительности, - это увеличение значения readahead для карты памяти до 2 Мб. Механизм readahead предназначен для заблаговременного чтения данных с носителя еще до того, как приложение запросит доступ к этим данным. Если ядро видит, что кто-то достаточно долго читает данные с носителя, оно пытается вычислить, какие данные понадобятся приложению в дальнейшем, и заранее загрузит их в оперативку, позволяя таким образом сократить время их отдачи.

Звучит круто, но, как показывает практика, алгоритм readahead очень часто ошибается, что приводит к лишним операциям ввода-вывода и расходу оперативной памяти. Высокие значения readahead (1–8 Мб) рекомендуются к применению на RAID-массивах, тогда как на десктопе или смартфоне лучше все оставить как есть, то есть 128 Кб.

Вердикт: кроме noop, не нужно ничего.

Твики системы управления виртуальной памятью

Кроме подсистемы I/O, принято также тюнинговать подсистему управления виртуальной памятью. Зачастую изменению подвергаются только две переменные ядра: vm.dirty_background_ratio и vm.dirty_ratio, которые позволяют регулировать размер буферов для хранения так называемых грязных данных, то есть тех данных, которые были записаны на диск приложением, но еще до сих пор находятся в оперативной памяти и ждут, пока они будут записаны на диск.

Стандартные значения этих переменных в десктопных Linux-дистрибутивах и Android примерно следующие:

* vm.dirty_background_ratio = 10 * vm.dirty_ratio = 20

Это значит, что при достижении размера буфера «грязных» данных в 10% от всего объема оперативки проснется ядерный поток pdflush и начнет записывать данные на диск. Если же операции записи данных на диск будут слишком интенсивными и, даже несмотря на работу pdflush, буфер будет продолжать расти, то при достижении 20% от объема оперативки система переключит все последующие операции записи в синхронный режим (без предварительной буферизации) и работа пишущих на диск приложений будет заблокирована до того момента, пока данные не будут записаны на диск (в терминологии Android это принято называть лагом).

При этом важно понимать, что, даже если размер буфера не достиг 10%, система так или иначе запустит поток pdflush через 30 с. Что нам дают эти знания? Фактически ничего, что мы могли бы использовать в своих целях. Комбинация 10/20% вполне разумна и, например, на смартфоне с 1 Гб памяти составляет примерно 100/200 Мб памяти, чего более чем достаточно в условиях редких всплесков записи, скорость которых зачастую ниже скорости записи в системную NAND-память или SD-карту (при установке софта или копировании файлов с компа). Но создатели скриптов оптимизации с этим, конечно же, не согласны.

Например, в скрипте Xplix можно найти примерно такие строки (в оригинале они намного длиннее из-за проверок на количество оперативной памяти и использования BusyBox):

Sysctl -w vm.dirty_background_ratio=50 sysctl -w vm.dirty_ratio=90

Данные команды применяются к устройствам с 1 Гб памяти, то есть устанавливают лимиты «грязного» буфера, равные (примерно) 500/900 Мб. Такие высокие значения абсолютно бессмысленны для смартфона, так как работают только в условиях постоянной интенсивной записи на диск, то есть опять же для высоконагруженного сервера. В ситуации со смартфоном они будут ничем не лучше стандартных. Кстати, в скрипте ThunderBolt! применяются гораздо более разумные (и близкие к стандартным) значения, но я сомневаюсь, что от их применения пользователь заметит хоть какую-то разницу:

If [ "$mem" -lt 524288 ];then sysctl -w vm.dirty_background_ratio=15; sysctl -w vm.dirty_ratio=30; elif [ "$mem" -lt 1049776 ];then sysctl -w vm.dirty_background_ratio=10; sysctl -w vm.dirty_ratio=20; else sysctl -w vm.dirty_background_ratio=5; sysctl -w vm.dirty_ratio=10; fi;

Первые две команды выполняются на смартфонах с 512 Мб оперативки, вторые - с 1 Гб, третьи - с более чем 1 Гб. Но на самом деле есть только одна причина изменять стандартные значения - девайс с очень медленной внутренней памятью и/или картой памяти (привет китайцам). В этом случае разумно разнести значения переменных, то есть сделать примерно так:

Sysctl -w vm.dirty_background_ratio=10 sysctl -w vm.dirty_ratio=60

Тогда при резких всплесках операций записи система, не успевая записывать данные на диск, до последнего не будет переключаться на синхронный режим, что позволит уменьшить лаги приложений при выполнении записи.

Вердикт: лучше не трогать.

Выводы

Существует огромное количество и более мелких оптимизаций, включая «тюнинг» сетевого стека, изменение переменных ядра Linux и Android (build.prop), но 90% из них не оказывают никакого влияния на реальную производительность устройства, а остальные 10% либо улучшают одни аспекты поведения устройства в ущерб других, либо настолько незначительно повышают производительность, что ты этого даже не заметишь. Из того, что реально действует, можно отметить следующее:

  • Разгон. Небольшой разгон позволяет повысить производительность, а андервольтинг - сохранить немного батарейки.
  • Оптимизация баз данных. Сильно сомневаюсь, что это даст заметный прирост скорости работы, но теория говорит нам, что работать должно.
  • Zipalign. Забавно, но, несмотря на встроенную в Android SDK функцию выравнивания контента внутри APK-файлов, в маркете можно найти большое количество софта, не прошедшего через zipalign.
  • Отключение ненужных системных сервисов, удаление неиспользуемых системных и редко используемых сторонних приложений (об этом я уже писал в одной из прошлых статей).
  • Кастомное ядро с оптимизациями под конкретный девайс (опять же не все ядра одинаково хороши).
  • Уже описанный планировщик ввода-вывода noop.
  • Алгоритм насыщения TCP westwood+. Есть доказательства, что в беспроводных сетях он намного эффективнее применяемого в Android по умолчанию Cubic. Доступен в кастомных ядрах.

Бесполезные настройки build.prop

LaraCraft304 с форумов XDA Developers провела исследование и выяснила, что внушительное количество настроек /system/build.prop, которые рекомендуют к применению «эксперты», вообще не существуют в исходном тексте AOSP и CyanogenMod. Вот их список:

  • ro.ril.disable.power.collapse
  • ro.mot.eri.losalert.delay
  • ro.config.hw_fast_dormancy
  • ro.config.hw_power_saving
  • windowsmgr.max_events_per_sec
  • persist.cust.tel.eons
  • ro.max.fling_velocity
  • ro.min.fling_velocity
  • ro.kernel.checkjni
  • dalvik.vm.verify-bytecode
  • debug.performance.tuning
  • video.accelerate.hw
  • ro.media.dec.jpeg.memcap
  • ro.config.nocheckin
  • profiler.force_disable_ulog
  • profiler.force_disable_err_rpt
  • ersist.sys.shutdown.mode
  • ro.HOME_APP_ADJ

Оптимизация баз данных

Скрипт для оптимизации баз данных настроек системы и приложений. Для работы, естественно, требуется root и BusyBox.

#!/system/bin/sh
for i in \
`busybox find /data -iname «*.db»`;
do \
/system/xbin/sqlite3 $i ‘VACUUM;’;
/system/xbin/sqlite3 $i ‘REINDEX;’;
done;

В данной статье мы разберем:
1. Оптимизация андроид устройства с помощью «Опций разработчика».
2. Программы и ежедневные действия для ускорения андроида.
3. Оптимизация и ускорение андроида с помощью кастомных оболочек (лаунчеров).

Оптимизация андроида – это задача не из легких, но «Твой Смартфон» поделится с Вами 3-мя эффективными способами оптимизации и ускорения андроид-устройств.

К счастью для простых пользователей, основные настройки делаются практически 1 раз на все время службы устройства, а те, которые требуют регулярных действий – много времени, как правило, не займут! Итак приступим..

1. Оптимизация андроид устройства с помощью «Опций разработчика».

Давайте подробно разберем, как оптимизировать и ускорить работу андроид устройства, отключив либо уменьшив графические эффекты, наложенные разработчиком (не требует root-прав). В некоторых моментах Вы станете перед выбором приукрасить внешнее оформление (для мощных аппаратов) либо оптимизировать скорость работы Вашего устройства. Правильная оптимизация смартфона или планшета очень важна, а дальше решать уже Вам, но наши советы будут направлены именно на это.

В первую очередь нужно зайти в Настройках телефона или планшета в пункт «Параметры разработчика» . В некоторых устройствах этот пункт нужно включить, для этого перейдите во вкладку «Об устройстве» и нажмите на «Номер сборки» 7 раз , и он у Вас появится.

Активируйте пункт «Параметры разработчика» и выполните следующие действия:

  • Включите «Принудит. обработка GPU» , чтоб Ваш графический процессор работал постоянно, не затрагивая ресурсы основного;
  • Для максимально эффективной работы устройства включите пункт «Отключить аппаратное наложение»;
  • Меняем значение для 3-пунктов: «Масштаб анимации окна» , «Масштаб анимации перехода» и «Шкала длительности аниматора» с 1х на - «Анимация отключена» (особенно важно для «слабых» устройств);
  • Ограничиваем количество работающих в фоне программ для освобождения оперативной памяти. В пункте «Фоновые процессы» выберите «Чем меньше - тем быстрее устройство» , мы рекомендуем «Не более 3 процессов» - для оптимальной работы, без потери многозадачности (особенно важно для устройств с менее 2 Гб оперативной памяти).

Последовательность действий при настройке опций разработчика смотрите на слайдере :

2. Программы и ежедневные действия для ускорения андроида.

Помимо одноразовых действий с Вашим смартфоном или планшетом, описанных выше, мы рекомендуем регулярно выполнять следующие действия:

  • Перезагружать android хотя бы 1 раз в неделю – происходит очистка кэша и мусора в оперативной памяти, и устройство начинает работать гораздо быстрее.
  • Раз в полгода делать телефону сброс к заводским настройкам, предварительно сохранив все Ваши данные в облаке (какое облако выбрать читайте ).

Лучшие приложения для ускорения и оптимизации андроида:

1. Clean Master Скачать
2. Android Assistant Скачать
3. Battery Doctor Скачать

Давайте разберем, как ускорить ваш андроид с помощью программы Clean Master :

  1. Установите бесплатное приложение Сlean Master из Плей маркета (ссылка выше).
  2. В приложении мы рекомендуем чистить мусор не менее чем раз в неделю.
  3. Практически после каждой «тяжелой» задачи, которую исполнял Ваш смартфон необходимо нажимать «Ускорение». Чтобы не заходить в приложение постоянно нажмите на 3 точки в правом верхнем углу, перейдите в пункт «Настройки» - «Настройки виджета» и включите его. Теперь Вы постоянно будете видеть процент заполненной оперативной памяти и, потянув появившийся виджет (кружок) в низ, проводить быструю очистку оперативной памяти вашего android.

3. Оптимизация и ускорение андроида с помощью кастомных оболочек (лаунчеров).

Кастомные оболочки используются для изменения внешнего вида и настройки функционала смартфона или планшета без перепрошивки и установки Root-прав. Именно для оптимизации скорости работы устройства мы рекомендуем установить Nova Launcher .

Его основное преимущество в том, что он потребляет меньше ресурсов системы, довольно гибкий в настройке и максимально приближен к чистой ОС Android.

Особенно полезно устанавливать Nova Launcher для «слабых» устройств и устройств малоизвестных (китайских) брендов. Также кастомные оболочки используются для максимальной настройки смартфона под пользователя, и мы разберем основные в следующих статьях (следите за обновлениями).

В этой статье мы разобрали 3 основных способа как ускорить андроид: правильная настройка с помощью «Опций разработчика», использование специального ПО и регулярные действия для оптимизации андроид устройства, оптимизация и ускорение андроид с помощью кастомных оболочек (лаунчеров)




Top