Я пытаюсь понять, почему переход на 64-битные процессоры является таким важным делом в iPhone. Я понимаю, что регистров будет в два раза больше, поэтому процессор может работать с вдвое большим количеством данных, что должно повысить производительность.
Однако я не вижу, чтобы в скором времени многие телефоны занимали более 4 ГБ памяти. Это кажется чрезмерным, и это отрицательно скажется на сроке службы батареи.
Другая проблема, которую я вижу, состоит в том, что большинству переменных сейчас требуется вдвое больше памяти. Это создаст проблемы в мобильной среде с небольшими объемами памяти.
Я считаю, что люди в Apple умны, и у них, вероятно, есть веские причины для этого, я просто пытаюсь понять их.
РЕДАКТИРОВАТЬ
Не знаю много о графических процессорах, но мне сказали, что с 64-битными регистрами в каждый регистр можно загрузить 2 пикселя, и операции с ними могут выполняться индивидуально. Есть ли графическое преимущество относительно 64 бит?
Ответы:
В основном это просто выброс большого числа, потому что это впечатляет массы. Большие числа явно превосходят, поэтому все, что с 64-битным процессором, явно лучше, чем что-то с 32-битным процессором. Новый процессор значительно лучше своего предшественника , но в Apple , моды, они не собираются попробовать маркетинг , основанный на технических спецификациях - они просто собираются , чтобы сказать вам , что 64-битная A7 является новее и лучше , чем 32- бит А-6 . Однако, глядя на технические характеристики, вы видите:
Помимо этого, существует тот факт, что они могут начать развертывать (обратно совместимые) 64-разрядные аппаратные средства сегодня, прежде чем мы столкнемся с «стеной 4 ГБ». Через несколько лет, когда 64-разрядная версия станет необходимостью, все оборудование будет поддерживать ее, и не будет необходимости обрабатывать устаревшие 32-разрядные архитектуры.
источник
В ARMv7 нет «стены 4 ГБ» , так как многие ядра ARMv7 поддерживают LPAE (расширение большого физического адреса), которое является концепцией, сходной с PAE на x86, за исключением того, что LPAE использует 40-битную адресацию. Это означает, что ARMv7, оснащенный LPAE, может адресовать до 1 ТБ ОЗУ .
Также важно отметить, что будущие ядра ARMv8, включая A7, не будут использовать 64-битную физическую адресацию . Скорее всего, A7 будет использовать 40-битную или 44-битную физическую адресацию. Позже дает доступ к максимально 16 ТБ ОЗУ.
Конечно, либо с LPAE на ARMv7, либо в режиме AArch32 на ARMv8 приложения по-прежнему 32-разрядные, поэтому само приложение может одновременно получать доступ только к 4 ГБ. Но я не думаю, что это будет проблемой для мобильных устройств в ближайшее время.
Вы беспокоитесь, что приложения будут использовать больше памяти (64-битные указатели), но это не будет так, если приложения будут работать в 32-битном режиме (AArch32).
С другой стороны, ARMv8 предоставляет другие архитектурные улучшения по сравнению с ARMv7, которые не связаны с AArch64.
TL, DR: 64-разрядность A7 - маркетинговый трюк. Даже в системах с объемом оперативной памяти более 4 ГБ это не дает существенного преимущества перед LPAE для 32-разрядных приложений. И 64-битные приложения не появятся в ближайшее время.
Обновление: это было подтверждено руководителем отдела маркетинга Qualcomm (в настоящее время бывшим руководителем, поскольку он был понижен в должности за эти комментарии ).
источник
Сосредоточение только на том,
A7
чтобы быть,ARMv8
есть одно очевидное преимущество. ARM перезагружает их набор команд и архитектуру.Будучи обратно совместимым с
ARMv7
, следующая версия также утверждаетТаким образом , возникает
ARMv8
проблемаARMv7
архитектурных различий, обеспечивающая более чистый интерфейс для разработчиков систем, который, вероятно, удалит устаревшие функции, что приведет к созданию лучшей платформы. Это означает, что вы должны ожидать лучшую производительность / энергию, а не негативное влияние на батарею.Смотрите больше на ARM Architecture Preview .
источник
Самое большое преимущество перед 32-битными для 64-битных процессоров - это движение памяти, а не ее размер. Хотя это правда, что 32-битная может накладывать ограничение 4 ГБ на прямой доступ. Есть много аппаратных / программных решений, чтобы обойти этот предел.
64-разрядные процессоры могут просто читать / записывать больше данных за одну операцию процессора. Это позволяет коду сборки выполнять операции с 8-байтовыми блоками. Это может иметь большое преимущество в производительности по сравнению с 32-разрядными процессорами. Вычисления с плавающей запятой быстрее на 64, чем на 32, и когда процессор использует двойные регистры, он может работать с 128-битными блоками данных.
64-разрядные процессоры также имеют более широкую полосу пропускания для физической памяти. Если у вас есть камера, которая записывает 1080p и хотите редактировать это видео. Выполнение операции с видеофайлом объемом 1 ГБ будет проще с 64-разрядной версией.
Все вышесказанное верно даже в том случае, если ГГц процессора остается прежним.
Если 64-битная система так хороша, то почему не 128-битная?
Чем больше битов вы добавляете в конвейер ЦП, тем больше данных нужно переместить ЦП. Процессор не может сузить эту пропускную способность до 16 или 32. Таким образом, это создает проблему для разработчиков программного обеспечения. Большая часть программного обеспечения (ваш календарь, заметки и т. Д.) Не зависит от большого количества данных, и в результате 128 бит будут занимать много потерянной полосы пропускания. Это может привести к снижению производительности и времени автономной работы. Поэтому производители ЦП должны найти баланс между пропускной способностью и требованиями к программному обеспечению.
Я поражен тем, что Apple выпустила новый 64-процессорный процессор так скоро в жизни мобильных компьютеров. Я думаю, что их реальная мотивация для этого - 3D-графика. Благодаря 64-разрядному процессору телефон может быстро передавать больше данных в графический процессор. Это позволит создавать быстрые 3D-игры и более впечатляющую графику. Вы действительно начнете видеть преимущества 64-битной 3D-графики в реальном времени, потому что этот процесс сильно зависит от данных.
источник
cache lines
по шинам памяти, которые могут иметь 16-битные 32-битные или, возможно, 64-битные. Это не обязательно соответствует собственному размеру слова CPU arch. Вы правы, что большая проблема заключается в перемещении данных, но эта проблема относится к какой-то другой аппаратной / архитектурной области. FP выполняется на FPU, которые на самом деле довольно быстрые и могут работать с одинарной или двойной точностью размеров. То же самое для декодирования видео или 3D на самом деле, они имеют все свое собственное оборудование, которое не обязательно является 64-битным.what every programmer should know about memory
доступный бесплатно для любопытного разработчика akkadia.org/drepper/cpumemory.pdfЭто облегчает работу с большими числами. Большие числа чрезвычайно важны в криптографии (после того, как PRISM стал безопасным мобильным телефоном стал очень важным) и в научных приложениях.
источник
Хотя вы можете не столкнуться с проблемами сейчас, если вы придерживаетесь 32-битной версии, в ближайшем будущем, безусловно, будут проблемы. Урок, извлеченный из мира настольных компьютеров, заключается в том, что переход будет длительным и болезненным процессом. Так что начинать нужно скорее раньше, чем позже.
Мне даже было удивительно, что смартфоны не были 64-битными с самого начала.
источник
Я не думаю, что есть много технических преимуществ. Во-первых, я думаю, что это имеет больше смысла, когда вы рассматриваете iPad (у него больше батарея, поэтому он может поддерживать больше оперативной памяти, более высокое потребление энергии процессором и т. Д.). Второй взгляд на другие объявления, происходящие прямо сейчас. AMD только что объявила о выпуске 64-битных процессоров ARM в 2014 году. По сути, Apple удерживает лидерство на рынке, несмотря на то, что выходит на планшеты высокого класса с Android и Win8.
источник
В краткосрочной перспективе практически ничего. Это на самом деле шаг назад в нескольких отношениях. Есть три основных преимущества, о которых я знаю.
источник
Ориентиры.
Для некоторых реализаций, способных работать как в 32, так и в 64-битных архитектурных режимах с ISA x86, MIPS и ARM, 64-битный режим быстрее тестировался в определенных важных приложениях. Одна из ключевых причин заключается в том, что 64-разрядные ISA являются более новыми, и поэтому архитекторы ISA знали больше о статистике приложений и о том, как оптимизировать этот набор поведений приложений при определении ISA. И новый процессор ISA должен быть ориентирован на будущее, учитывая потребности приложений в памяти, которые растут со скоростью закона Мура и уже выросли в миллион раз в области мобильных устройств.
Таким образом, новый ISA arm64, скорее всего, сравнительно быстрее тестирует любой код с ограниченной производительностью, который вы можете разработать (он имеет в моем коде), а также позволяет тупым указателям на C обращаться к обширным виртуальным адресным пространствам, которые, вероятно, станут обычными через десятилетие или более (что является гораздо меньше времени, чем у оригинального 32-битного ARM ISA уже существовало).
Производительность по вашему конкретному набору приложений (мера, чтобы подтвердить) является отличной причиной, чтобы предпочесть arm64.
источник
64-разрядная версия обеспечивает намного больший совместный доступ к коду со сборками OSX для настольных систем (все они 64-разрядные)
источник