Saya mencoba mencari tahu mengapa pergi ke prosesor 64 bit adalah masalah besar di iPhone. Saya mengerti bahwa akan ada register dua kali lebih banyak sehingga prosesor dapat bekerja dengan data dua kali lebih banyak yang akan meningkatkan kinerja.
Namun saya tidak melihat banyak ponsel akan memiliki lebih dari 4GB memori dalam waktu dekat. Sepertinya berlebihan dan itu akan berdampak negatif terhadap usia baterai.
Masalah lain yang saya lihat adalah bahwa sebagian besar variabel sekarang membutuhkan memori dua kali lebih banyak. Ini akan menciptakan masalah di lingkungan seluler dengan sedikit memori.
Saya percaya bahwa orang-orang di Apple cerdas dan mereka mungkin punya alasan bagus untuk melakukan ini, saya hanya mencoba untuk memahaminya.
EDIT
Tidak tahu banyak tentang GPU, tetapi saya diberitahu bahwa dengan register 64 bit, 2 piksel dapat dimuat ke dalam register masing-masing dan operasi dapat dilakukan pada mereka secara individual. Apakah ada keunggulan grafis mengenai 64 bit?
Jawaban:
Itu sebagian besar hanya membuang sejumlah besar di luar sana karena itu mengesankan massa. Angka yang lebih besar jelas lebih unggul sehingga apa pun dengan prosesor 64-bit jelas lebih baik daripada sesuatu dengan prosesor 32-bit. CPU baru secara signifikan lebih baik dari pendahulunya tetapi, Apple fashion, mereka tidak akan mencoba pemasaran berdasarkan spesifikasi teknologi - mereka hanya akan memberitahu Anda bahwa 64-bit A7 adalah baru & lebih baik daripada 32 bit A-6 . Namun, melihat spesifikasi teknologi, Anda lihat:
Lebih dari itu, ada fakta bahwa mereka dapat mulai meluncurkan (kompatibel dengan backward) perangkat keras 64-bit hari ini, sebelum kita menghadapi 'dinding 4GB'. Dalam beberapa tahun, ketika 64-bit menjadi kebutuhan, semua perangkat keras akan mendukungnya & tidak perlu lagi menangani arsitektur 32-bit yang lama.
sumber
Tidak ada "dinding 4GB" pada ARMv7, karena banyak core ARMv7 mendukung LPAE (Large Physical Address Extension), yang merupakan konsep yang mirip dengan PAE pada x86, kecuali LPAE menggunakan pengalamatan 40-bit. Artinya, ARMv7 yang dilengkapi LPAE dapat mengatasi RAM hingga 1TB .
Penting juga untuk menyebutkan bahwa core ARMv8 mendatang, termasuk A7, tidak akan menggunakan pengalamatan fisik 64-bit . Kemungkinan besar A7 akan menggunakan pengalamatan fisik 40-bit atau 44-bit. Kemudian memberikan akses ke 16TB RAM paling banyak.
Tentu saja dengan LPAE pada ARMv7 atau dalam mode AArch32 pada ARMv8, aplikasi masih 32-bit, sehingga aplikasi itu sendiri hanya dapat mengakses 4GB pada suatu waktu. Tapi saya tidak berpikir itu akan menjadi masalah pada perangkat seluler dalam waktu dekat.
Anda khawatir aplikasi akan menggunakan lebih banyak memori (64-bit pointer), tetapi itu tidak akan menjadi masalah jika aplikasi berjalan dalam mode 32-bit (AArch32).
Di sisi lain, ARMv8 memberikan peningkatan arsitektur lainnya dibandingkan ARMv7, yang tidak terkait dengan AArch64.
TL, DR: 64-bitness dari A7 adalah gimmick pemasaran. Bahkan pada sistem dengan RAM lebih dari 4GB tidak memberikan keuntungan signifikan dibandingkan LPAE untuk aplikasi 32-bit. Dan aplikasi 64-bit tidak akan hadir dalam waktu dekat.
Pembaruan: Sudah dikonfirmasikan oleh eksekutif pemasaran Qualcomm (saat ini adalah mantan eksekutif, saat ia didemosiasikan untuk komentar ini ).
sumber
Berfokus hanya pada
A7
keberadaanARMv8
ada satu keuntungan yang jelas. ARM sedang me-reboot set instruksi dan arsitektur mereka.Menjadi kompabilitas mundur dengan
ARMv7
, versi berikutnya juga mengklaimJadi
ARMv8
tantanganARMv7
pada perbedaan arsitektur, menyediakan antarmuka yang lebih bersih untuk pengembang sistem yang mungkin akan menghapus fitur warisan yang mengarah ke platform yang lebih baik. Yang berarti Anda harus mengharapkan kinerja / energi yang lebih baik daripada dampak negatif pada baterai.Lihat lebih lanjut tentang ARM Architecture Preview .
sumber
Keuntungan terbesar lebih dari 32 bit untuk prosesor 64 bit adalah pergerakan memori, dan bukan ukuran memori. Memang benar bahwa 32 bit dapat memaksakan batas 4GB pada akses langsung. Ada banyak solusi perangkat keras / lunak untuk mengatasi batas itu.
Prosesor 64 bit hanya dapat membaca / menulis lebih banyak data dalam operasi prosesor tunggal. Ini memungkinkan kode perakitan untuk melakukan operasi pada blok 8 byte. Ini dapat memiliki keunggulan kinerja yang luar biasa dibandingkan prosesor 32 bit. Perhitungan floating point lebih cepat pada 64 dari 32, dan ketika CPU menggunakan register ganda dapat beroperasi pada blok data 128 bit.
Prosesor 64 bit juga memiliki bandwidth yang lebih luas untuk memori fisik. Jika Anda memiliki kamera yang merekam 1080p dan ingin mengedit video itu. Melakukan operasi pada file video 1GB hanya akan lebih cepat pada 64-bit.
Semua hal di atas benar bahkan jika Ghz prosesor tetap sama.
Jika 64-bit sangat bagus, mengapa tidak 128 bit?
Semakin banyak bit yang Anda tambahkan ke pipa CPU semakin banyak data yang harus dipindahkan CPU. CPU tidak dapat mempersempit bandwidth menjadi 16 atau 32. Jadi ini menciptakan masalah bagi pengembang perangkat lunak. Sebagian besar perangkat lunak (kalender, catatan, dll.) Tidak bergantung pada banyak data, dan akibatnya 128 bit akan melibatkan banyak bandwidth yang terbuang. Ini dapat mulai menghambat kinerja dan usia baterai. Jadi produsen CPU harus menemukan keseimbangan antara bandwidth dan persyaratan perangkat lunak.
Saya kagum bahwa Apple merilis prosesor 64 baru begitu cepat dalam kehidupan komputasi mobile. Saya pikir motivasi mereka sebenarnya untuk ini adalah grafik 3D. Dengan prosesor 64 bit, ponsel dapat memindahkan lebih banyak data ke GPU dengan cepat. Ini akan memungkinkan game 3D cepat dan grafik yang lebih mengesankan. Anda akan benar-benar mulai melihat kelebihan 64-bit dalam 3D waktu-nyata karena proses itu sangat bergantung pada data.
sumber
cache lines
melalui bus memori yang mungkin memiliki 16-bit 32-bit atau mungkin 64-bit. Itu tidak perlu cocok dengan ukuran kata asli CPU arch. Anda benar bahwa masalah besar adalah memindahkan data tetapi masalah itu milik beberapa perangkat keras / domain arsitektur lainnya. FP dilakukan pada FPU yang sebenarnya cukup cepat dan dapat bekerja dengan ukuran presisi tunggal atau ganda. Sama untuk decoding video atau 3D sebenarnya, mereka memiliki semua perangkat keras khusus mereka yang belum tentu 64-bit.what every programmer should know about memory
gratis yang tersedia untuk pengembang penasaran akkadia.org/drepper/cpumemory.pdfItu membuat segalanya lebih mudah ketika menangani jumlah besar. Sejumlah besar sangat penting dalam kriptografi (setelah PRISM memiliki ponsel yang aman menjadi sangat penting) dan aplikasi ilmiah.
sumber
Meskipun Anda mungkin tidak mengalami masalah sekarang jika Anda tetap menggunakan 32 bit, pasti akan ada masalah dalam waktu dekat. Pelajaran yang dipetik dari dunia desktop adalah bahwa transisi akan menjadi proses yang panjang dan menyakitkan. Jadi, Anda harus memulainya lebih cepat daripada nanti.
Bahkan mengejutkan bagi saya bahwa smartphone tidak 64 bit sedikit dari awal.
sumber
Saya rasa tidak banyak manfaat teknis. Pertama saya pikir itu lebih masuk akal ketika Anda mempertimbangkan iPad (memiliki baterai lebih besar sehingga dapat mendukung lebih banyak ram, konsumsi energi yang lebih tinggi oleh prosesor, dll). Lihatlah pengumuman lain yang sedang terjadi saat ini. AMD baru saja mengumumkan akan mengirimkan prosesor ARM 64bit pada tahun 2014. Ini pada dasarnya adalah Apple mempertahankan kepemimpinan pasar dalam menghadapi apa yang akan terjadi pada tablet Android dan Win8 kelas atas.
sumber
Dalam jangka pendek tidak ada apa-apa. Sebenarnya ini adalah langkah mundur dalam beberapa cara. Ada tiga keuntungan utama yang saya ketahui.
sumber
Tingkatan yang dicapai.
Untuk beberapa implementasi yang mampu baik mode arsitektur 32 vs 64 bit dengan x86, MIPS dan ARM ISA, mode 64 bit diperbandingkan lebih cepat pada aplikasi penting tertentu. Salah satu alasan utama adalah bahwa 64 bit ISA lebih baru dan arsitek ISA tahu lebih banyak tentang statistik aplikasi dan bagaimana mengoptimalkan untuk seperangkat perilaku aplikasi ketika mendefinisikan ISA. Dan prosesor baru ISA harus tahan di masa depan terhadap kebutuhan memori aplikasi yang tumbuh dengan kecepatan hukum Moore, dan yang telah tumbuh lebih dari satu juta kali lipat di bidang perangkat seluler.
Dengan demikian, arm64 baru ISA cenderung melakukan benchmark lebih cepat pada kode apa pun yang dibatasi kinerja yang mungkin Anda kembangkan (ada pada kode saya), serta memungkinkan pointer C bodoh untuk mengatasi ruang alamat virtual yang luas yang cenderung menjadi umum satu dekade atau lebih karenanya (yang merupakan waktu jauh lebih sedikit daripada ARM ISA 32 bit asli sudah ada).
Kinerja pada set aplikasi khusus Anda (ukuran untuk mengonfirmasi) adalah alasan yang bagus untuk memilih arm64.
sumber
64-bit memungkinkan lebih banyak berbagi kode dengan build desktop OSX (yang semuanya 64-bit)
sumber