Потребление энергии является ключевым для мобильных гаджетов, но часто исследователи концентрируются на экранах, процессорах и модемах, не замечая других «прожорливых» компонентов. Один из них – флэш-память смартфонов, которая может отвечать за 36% энергопотребления девайса. И существенное влияние на автономность оказывает используемая в гаджете файловая система.
Оптимизировать электронику по ее энергозатратам сегодня приходится из-за отставания технологий аккумуляторов. Батареи не выдерживают гонки технологий, и с каждым годом смартфоны работают все меньше и меньше времени. Все потому, что прогресс в аккумуляторах происходит медленнее, чем в микрочипах. В микросхемах количество транзисторов увеличивается вдвое каждые два года, но емкость батарей растет вдвое лишь каждые 10 лет.
Необходимость в новой файловой системе
Сегодня в смартфонах используется почти исключительно файловая система еxt4. Она является эволюцией самой популярной файловой системы в операционной системе Linux – еxt3. В еxt3 главное внимание уделили журналам для ведения истории операций. В еxt4 пошли дальше и модифицировали важные структуры для хранения данных.
Файловую систему еxt4 создали в период 2003-2006 годов, и она лучше всего адаптирована для работы с механическими жесткими дисками. У флэш-памяти совсем другой принцип: она имеет относительно низкую скорость работы, но это компенсируется распараллеливанием процедур записи и чтения на десятки каналов.
Для учета этих особенностей в Samsung в 2012 году представили файловую систему F2FS. Необходимость в новой файловой системе стала особенно очевидной после презентации флэш-памяти типа UFS, которая сделала флэш еще быстрее, и программное обеспечение начало тормозить возможности аппаратного обеспечения. Также файловая система еxt4 не учитывала особенность флэш-памяти: неизменное время доступа и ограниченное количество циклов записи данных.
Энергопотребление компонентов смартфона
Исследователи Техасского университета определили, как распределяется общее энергопотребление смартфона при типовых операциях. Они взяли файл размером 100 МБ и передавали его блоками по 4 КБ через сетевой канал связи. Смартфон находился в режиме полета, а всего провели 10 замеров для опосредования финального результата.
В качестве тестового устройства взяли Samsung Galaxy Nexus S с двухъядерным процессором Cortex-A9 частотой 1,2 ГГц, 32 ГБ внутренней флэш-памяти, 1 ГБ оперативной памяти. Программной частью гаджета была операционная система Cyanogenmod 13.0 на базе Android 6.0.1 с ядром Linux 3.0.101, что позволило активировать F2FS.
Энергопотребление файловых систем
Анализ ученых университета Техаса показал, что файловая система может существенно (в разы) влиять на энергопотребление флэш-памяти:
- случайная запись в еxt4 потребляет в 19 раз больше энергии, чем последовательная. В F2FS соотношение составляет 12 раз.
- случайное чтение в еxt4 потребляет в 7 раз больше энергии при последовательном чтении. Для F2FS соотношение равно 8 раз.
Особенность флэш-памяти в том, что больше всего энергии она тратит во время записи. Самые высокие показатели энергопотребления демонстрирует режим случайной записи данных. Меньше всего энергии флэш-память потребляет при последовательном чтении. Для еxt4 разница между этими режимами составляет 32 раза, и лишь 18 раз для F2FS.
В целом приложения Android при работе на базе F2FS потребляют меньше энергии, чем при работе с еxt4.