Mengapa Intel menjatuhkan Itanium? [Tutup]

14

Saya membaca tentang sejarah komputer dan saya datang bersama prosesor IA-64 (Itanium). Mereka terdengar sangat menarik dan saya bingung mengapa Intel memutuskan untuk meninggalkan mereka.

Kemampuan untuk memilih secara eksplisit 2 instruksi apa yang ingin Anda jalankan dalam siklus itu adalah ide yang bagus, terutama ketika menulis program Anda dalam perakitan, misalnya, bootloader yang lebih cepat.

The ratusan register harus meyakinkan untuk setiap programmer perakitan. Anda pada dasarnya dapat menyimpan semua variabel fungsi di register jika tidak memanggil yang lain.

Kemampuan untuk melakukan instruksi seperti ini:

(qp) xor r1 = r2, r3    ; r1 =   r2  XOR r3

(qp) xor r1 = (imm8), r3 ; r1 = (imm8) XOR r3

dibandingkan harus melakukan:

; eax = r1
; ebx = r2
; ecx = r3

mov eax, ebx ; first put r2 into r1
xor eax, ecx ; then set r1 equivalent to r2 XOR r3

mov eax, (imm32) ; first put (imm32) into r1
xor eax, ecx ; then set r1 equivalent to (imm32) XOR r3

Saya mendengar itu karena tidak ada perbandingan x86 mundur, tetapi tidak dapatkah Anda diperbaiki dengan hanya menambahkan sirkuit Pentium ke dalamnya dan hanya menambahkan flag prosesor yang akan mengubahnya ke mode Itanium (seperti beralih ke mode Protected atau Long)

Semua hal besar tentang hal itu pasti akan membuat mereka lompatan raksasa di depan AMD.

Ada ide?


Sayangnya ini berarti Anda akan memerlukan kompiler yang sangat canggih untuk melakukan ini. Atau bahkan satu per model CPU tertentu. (Misalnya versi Itanium yang lebih baru dengan fitur tambahan akan membutuhkan kompiler yang berbeda).

Ketika saya sedang mengerjakan proyek WinForms (target hanya punya. NET 2.0) di Visual Studio 2010, saya punya target kompilasi IA-64. Itu berarti bahwa ada. NET runtime yang dapat dikompilasi untuk IA-64 dan. NET runtime berarti Windows. Plus, jawaban Hamilton menyebutkan Windows NT. Memiliki sistem operasi penuh seperti Windows NT berarti ada kompiler yang mampu menghasilkan kode mesin IA-64.

Cole Johnson
sumber
1
Jawaban ini memberikan beberapa informasi latar belakang tentang Itanium yang mungkin berguna bagi Anda.
amiregelz
1
Saya menganggap bahwa prosesor EDGE adalah arsitektur baru yang paling menjanjikan. Dan mereka bahkan lebih baik daripada prosesor VLIW (seperti Itanium). Anda mungkin ingin membaca halaman tertaut di "A ISA baru?" dan "Teori" sebagai bagian itu menjelaskan mengapa mereka jauh lebih baik.
Dan D.
@DanD masalahnya adalah bahwa x86 adalah standar de facto . Yang paling dekat Anda mungkin dapatkan adalah Apple beralih dari Intel ke EDGE, tetapi bahkan kemudian itu bisa memakan waktu bertahun-tahun.
Cole Johnson
"Aku dengar itu karena tidak ada perbandingan x86 mundur, tetapi tidak bisakah kamu diperbaiki dengan hanya menambahkan sirkuit Pentium ke dalamnya dan hanya menambahkan flag prosesor yang akan mengubahnya ke mode Itanium (seperti beralih ke mode Protected atau Long)" Jika mereka dapat membuat chip dengan transistor dua kali lebih banyak tanpa mengorbankan biaya, kinerja, keandalan, panas, dan sebagainya, mereka sudah akan melakukannya.
David Schwartz
1
Saya pikir Itanium itu belum mati .
David Schwartz

Jawaban:

29

Performa sangat mengecewakan dibandingkan dengan harapan dan tidak laku dibandingkan dengan arsitektur x86 Intel.

Intel membujuk saya untuk membuat shell C Hamilton di Itanium yang menjalankan Windows NT sekitar tahun 2000 untuk pameran dagang. Itaniums sulit didapat, jadi saya menggunakan VPN ke mesin di lab mereka. Karena sudah membuat versi untuk NT pada x86, MIPS, Alpha dan PowerPC, "port" itu sepele, hanya sedikit perubahan besar pada makefile saya. Saya pikir saya butuh setengah jam.

Tetapi kinerjanya benar-benar tidak memuaskan, pasti melebihi VPN, dan masih mengecewakan ketika saya tiba di pameran dagang dan bisa mencobanya langsung di sana. Itanium pergi ke mana-mana karena itu bukan produk hebat dan tidak ada yang membelinya.

Ditambahkan:

Untuk sementara, Intel menggembar-gemborkan pengalaman saya porting ke Itanium menggunakan pengalaman pengembangan jarak jauh VPN mereka di situs web mereka. Hilang sekarang tetapi snapshotted di archive.org, inilah yang dikatakan di FAQ jarak jauh mereka :

T: Apakah Anda memiliki pelanggan yang dapat saya ajak bicara tentang layanan Remote Access?

A: Ya, Laboratorium Hamilton *. Untuk melihat lebih dalam manfaat Hamilton Laboratories yang diperoleh dari layanan ini, lihat studi kasus Hamilton Laboratories .

Dalam " studi kasus " dikatakan bahwa saya membangun versi Itanium karena pelanggan bersorak untuk itu. Tapi saya tidak ingat pernah menjual salinan untuk Itanium. Dijual mereka untuk yang lainnya, termasuk PowerPC (dan berapa banyak dari mereka yang menjalankan NT kira ada?) Hanya tidak pernah untuk Itanium.

Tantangan: Untuk mempercepat pengembangan produk Hamilton C Shell untuk memastikan port waktu ke pasar yang menguntungkan dari alat arsitektur pelanggan untuk Intel® Itanium® dan Windows * 2000.

Solusi: Menggunakan Remote Access Program, termasuk akses Internet kecepatan tinggi dan klien Shiva® VPN untuk mengakses lingkungan pengembangan Itanium, memodifikasi kode sumber dan membuat file, menguji debugging dan mengkompilasi ulang aplikasi 64-bit dari jarak jauh hanya dalam waktu 7 jam.

Nicole Hamilton
sumber
5
Tidak ada yang perlu diubah. Seluruh shell C saya sangat multithreaded tetapi terutama pada masa itu, harus sangat portable C dan sangat efisien seperti yang ditulis karena kompiler yang saya gunakan di awal 90-an sering sangat dasar dan pengoptimal kadang-kadang tidak dapat diandalkan. Saya telah membangun mesin RISC 64-bit dan telah menemukan dan memperbaiki masalah penyelarasan. Untuk perf, saya selalu langsung ke Win32 API untuk semuanya, jadi itu tidak mungkin perpustakaan runtime C yang buruk juga. Mesin yang benar-benar panas adalah Alpha dan dibandingkan dengan itu, Itanium hanya mengecewakan.
Nicole Hamilton
8
Hanya melihat C Shell Anda. Itu sangat mengagumkan. Saya selalu memandang Cygwin sebagai pelindung. Saya harus mencobanya beberapa saat.
Michael Brown
6
Itu adalah Intel, bukan Microsoft, dengan sistem pengembangan jarak jauh yang gila itu. Microsoft sangat membantu pengembang. Microsoft membantu mengatur saya untuk mendapatkan mesin MIPS, Alpha, dan PowerPC saya. Saya biasa mendapatkan CD buatan tangan dari bangunan baru NT dari grup dev pada awal 1992, ketika tidak ada banyak salinan di mana pun di luar kampus Microsoft.
Nicole Hamilton
8
Tidak, kernel NT cukup agnostik tentang arsitektur prosesor. Dave Cutler sangat fanatik tentang hal itu. Mereka memulai pengembangan NT pada i960 , hanya untuk menghindari x86-isme yang merayap ke dalam kode. Dan sementara mereka menjatuhkan i960, NT 3.1 Beta dirilis pada x86 dan MIPS pada Juli 1992 dan pada Alpha beberapa bulan kemudian, iirc. Microsoft telah membantu saya mendapatkan MIPS dan mesin Alpha, jadi saya mendukung semua 3 prosesor saat diumumkan. Satu-satunya hal yang istimewa tentang Itanium adalah bahwa itu mengecewakan dan tidak laku.
Nicole Hamilton
1
@ColeJohnson - Seperti Nicole Hamilton menunjukkan masalahnya bukan kernel NT. Maksudku sih Windows Server 2008 R2 mendukung Itanium. Jadi masalahnya bukan sistem operasi. Masalahnya adalah platform itu sendiri. Tentu saja itu tidak membantu bahwa AMD melemparkan kunci dalam rencana Intel dengan hanya memperluas platform x86 itu sendiri.
Ramhound
4

Jawaban cepat: Performa buruk. Intel mencoba merilis produk revolusioner ketika mereka seharusnya berevolusi menjadi produk yang mereka inginkan.

Lebih khusus: Prosesor tidak cukup cepat dalam keadaan umum. Intel merilis prosesor saat kecepatan prosesor ke celah kecepatan memori melebar. Itanium, sebagai prosesor Reduced Instruction Set (RISC) membutuhkan lebih banyak byte-per-instruksi daripada sepupunya, varian x86. Meningkatnya beban memori, menyebabkan prosesor berjalan lambat.

Semua ini jengkel oleh seluruh arsitektur, pada dasarnya, rilis pertama. Sementara RISC sendiri bukan ide baru, banyak komponen perangkat keras dan membutuhkan desain tata letak baru. Ada juga banyak ide baru dalam tata letak instruksi Itanium yang perlu dicerna secara menyeluruh oleh komunitas pengembangan sebelum perangkat lunak berkualitas tinggi tersedia.

Pada akhirnya banyak teknologi yang akhirnya digunakan dalam rilis chip Intel yang ada - tidak mudah terlihat oleh pengguna akhir.

A. Phillips
sumber
2
Apakah yang Anda maksudkan adalah kinerja yang buruk ketika melakukan hal-hal Itanium, atau kinerja yang benar-benar mengerikan ketika meniru kode warisan X86?
Hennes
1
kedua. Kesan saya adalah emulator X86 tidak terlalu penting bagi tim Itanium. Sebaliknya emulator adalah fitur produk penting untuk mendapatkan yang benar karena itu adalah gap-gap yang sebagian besar pelanggan akan membangun kesan pertama.
A. Phillips
1
Kinerja Itanium dalam kode Itanium yang ditulis dengan baik sangat fantastis - tidak ada banyak kode yang bagus di luar sana.
A. Phillips
5
Apa artinya "kode Itanium yang ditulis dengan baik" artinya, Aaron? Jika C bersih dengan baik di mana semuanya selaras dengan benar tanpa gips yang tidak diinginkan dan sebagainya, apa lagi yang membuat sesuatu yang ditulis dengan sangat baik untuk Itanium? Dengan shell C saya, saya dapat dengan mudah timemenghitung hal-hal yang terikat (mis., Nomor anjak), i / o (menyalin atau mencatat file) dan OS perf (membuat utas atau proses). Di Alpha, rasanya seperti, wow, ini cepat. Beri saya prosesor ganda, saya bisa mengukurnya dengan mudah. Saya katakan, Itanium adalah anjing dengan cara apa pun yang Anda lihat, terutama dibandingkan dengan hype.
Nicole Hamilton
4
Platform MIPS, Alpha dan PowerPC juga baru, bersama dengan semua NT pada awal 90-an dan chip-chip lainnya, terutama Alpha, lebih cepat dibandingkan dengan kebanyakan mesin x86. Saya masih memiliki salah satu dari mesin-mesin lain di ruang bawah tanah saya. Itanium tidak begitu bagus. Ini bukan kesalahan langkah pertama Intel. Greyhair lain di luar sana akan mengingat bencana 432 mereka pada tahun 1981. Itu juga adalah arsitektur yang dirancang buruk yang jatuh dalam kinerja.
Nicole Hamilton
3

Itanium adalah desain yang bagus jika Anda dapat memanfaatkannya .

Sayangnya ini berarti Anda akan memerlukan kompiler yang sangat canggih untuk melakukan ini. Atau bahkan satu per model CPU tertentu. (Misalnya versi Itanium yang lebih baru dengan fitur tambahan akan membutuhkan kompiler yang berbeda).

Membuat kompiler seperti itu sekali adalah tugas yang sulit. Untuk melakukan itu untuk setiap variasi CPU tidak ekonomis.

Hennes
sumber
Anda tidak perlu memperbarui kompiler untuk yang lebih baru. Anda hanya ingin memanfaatkan fitur-fitur baru. Saya mendengar mereka akan mempertahankan kompatibilitas ke belakang.
Cole Johnson
Dia suka assembler saja.
ott--
Saya menyebutkan itu akan membuat pengkodean perakitan lebih mudah. Kompiler setidaknya bisa menggunakan instruksi paling sederhana yang dapat dipikirkan.
Cole Johnson
Membuat kompiler yang berfungsi sangat berbeda dengan yang secara efisien menggunakan kemampuan instruksi lebar / paralel dari sebuah CPU. Jika Anda pembuat kerajinan tangan, Anda harus dapat melakukan hal-hal yang bagus, tetapi dengan biaya banyak pekerjaan.
Hennes
2
Dari utas slashdot lama: kompiler untuk Itanium sulit
Rich Homolka
2

Bagian penting lain dari sejarah Itanium yang belum benar-benar disentuh adalah kenyataan bahwa pada tahun 2001 dengan debut Itaniums, tidak mungkin untuk mendapatkan sejumlah besar RAM ke perangkat keras komoditas. x86_64 hanya blip di cakrawala dan AMD Opterons bahkan tidak akan dirilis 2 tahun lagi.

Pengalaman pertama saya (dan satu-satunya) dengan server Itanium adalah pada tahun 2002 di sebuah perusahaan kimia di mana mereka membutuhkan SQL Server untuk melakukan analisis oli untuk mendeteksi cacat. Minyak ini berasal dari dan masuk ke mesin jutaan dolar di perusahaan miliar dolar, sehingga mereka memiliki sekelompok Itanium, masing-masing dengan 128Gb RAM. 128Gb RAM saat ini masih dalam jumlah yang wajar, tetapi mudah dan murah untuk dipasang di server.

Pada tahun 2002, 128Gb RAM adalah jumlah yang sangat besar, dan karena mereka sudah memiliki infrastruktur SQL Server yang ada, itu lebih murah untuk membayar beberapa mesin Itanium dan memuatnya dengan RAM, daripada beralih ke platform yang berbeda dan basis data yang berbeda.

Sekarang sepele untuk memasukkan 128Gb (atau lebih) ke server komoditas, salah satu bagian besar dari pasar Itanium yang tidak memiliki pesaing yang nyata (Opteron hadir pada tahun 2003, dan sekarang tentu saja server yang dapat ambil ratusan pertunjukan memori di mana-mana) dibanjiri dengan opsi yang lebih murah untuk dibeli, lebih murah untuk dimiliki, dan lebih cepat.

Mark Henderson
sumber
Saya cukup yakin modul ram 128 GB ddr3 saat ini akan menjalankan Anda setidaknya satu grand (USD)
Cole Johnson
2
Saya belum pernah melihat modul DDR 128Gb ... tetapi menempatkan 128Gb RAM ECC Terdaftar ke server lebih dari $ 1000, tetapi tidak lebih; tergantung pada kesepakatan yang bisa Anda dapatkan dari pemasok Anda.
Mark Henderson
Saya juga belum pernah melihat modul 128 gb . Tapi set 8x16GB ini setara dan harganya $ 1.500 yang cukup murah dibandingkan dengan set $ 10k yang pernah saya lihat di tempat lain
Cole Johnson
Saya melihat banyak Gbs; haruskah itu GB?
Charlie
1

Saya mendengar bahwa itu karena AMD mendorong Intel untuk mengalokasikan lebih banyak sumber daya ke prosesor utama mereka untuk bersaing. AMD keluar dengan Athlon 64s mereka pada tahun 2003, yang memiliki harga / kinerja yang lebih baik daripada Pentium. Ada keyakinan bahwa jika Intel terus mengembangkan Itanium dengan kekuatan penuh maka itu akan lebih cepat daripada prosesor x86 saat ini.

Thomas
sumber
1
Pepatah "Bisa saja ... akan" berlaku untuk apa Itanium bisa jika AMD tidak hanya memperpanjang x86. Intel dapat melakukannya jika mereka benar-benar menginginkannya, membunuh x86-64 tetapi mereka berada di bawah tekanan dari Microsoft. Saya yakin, jika Intel tidak melisensikan x86-64 dari AMD, situasi saat ini kemungkinan akan dibalik dengan kepemimpinan AMD dan Intel hampir tidak mampu. ikuti perkembangan AMD.
Ramhound