2009-06-18 27 views
21

Trong this article Jonh Dvorak gọi Itanium "một trong những fiascos tuyệt vời trong 50 năm qua". Trong khi ông mô tả những kỳ vọng thị trường lạc quan và kết quả tài chính đầy kịch tính của ý tưởng, ông không đi vào chi tiết kỹ thuật của thất bại hoành tráng này. Tôi đã có cơ hội làm việc với Itanium trong một khoảng thời gian và cá nhân tôi yêu thích kiến ​​trúc của nó, nó rất rõ ràng và đơn giản và dễ hiểu so với kiến ​​trúc vi xử lý x86 hiện đại ...Những lý do kỹ thuật đằng sau "Itanium fiasco", nếu có?

Vậy thì lý do kỹ thuật của sự thất bại của nó? Dưới hiệu suất? Không tương thích với mã x86? Sự phức tạp của trình biên dịch? Tại sao "Itanic" chìm?

Itanium processor block

+0

Bạn sẽ nhận được câu trả lời hay hơn tại serverfault.com, methinks. ;) –

+1

Theo ý kiến ​​của tôi nó rất "lập trình liên quan", bởi vì bất cứ điều gì chúng tôi chương trình được thực hiện bởi bộ xử lý-thingie bên trong máy. Vì vậy, bạn phải biết làm thế nào và tại sao nó hoạt động ít nhất một chút. –

+0

Không thực sự. Toàn bộ PC là cần thiết cho lập trình, nhưng câu hỏi cấu hình PC thuộc về serverfault.com và không phải stackoverflow.com. – OregonGhost

Trả lời

21

Itanium thất bại vì VLIW cho khối lượng công việc ngày nay chỉ đơn giản là một ý tưởng khủng khiếp.

Một trong những bộ phim khoa học máy tính (tôi quên cái nào, thật đáng buồn khi các công cụ tìm kiếm thất bại) nói rằng "EPIC là một ý tưởng tuyệt vời cho đến khi họ nhận ra rằng các trình biên dịch cần thiết để làm cho nó không thể được viết ".

Đó là khá nhiều vấn đề về móng tay.

Để tính toán khoa học, nơi bạn nhận được ít nhất một vài chục hướng dẫn cho mỗi khối cơ bản, VLIW có thể hoạt động tốt. Có đủ hướng dẫn để tạo các gói tốt. Đối với khối lượng công việc hiện đại hơn, trong đó đôi khi bạn nhận được khoảng 6-7 hướng dẫn cho mỗi khối cơ bản, nó chỉ đơn giản là không (đó là trung bình, IIRC, cho SPEC2000). Trình biên dịch chỉ đơn giản là không thể tìm thấy các hướng dẫn độc lập để đưa vào các gói.

Bộ xử lý x86 hiện đại, ngoại trừ Intel Atom và tôi tin rằng AMD E-3 * /4 *, là tất cả các bộ vi xử lý không theo yêu cầu. Chúng duy trì một cửa sổ hướng dẫn động của khoảng 100 lệnh, và trong cửa sổ đó chúng thực hiện các lệnh bất cứ khi nào đầu vào của chúng trở nên sẵn sàng. Nếu nhiều hướng dẫn đã sẵn sàng để đi và chúng không cạnh tranh về tài nguyên, chúng sẽ đi cùng nhau trong cùng một chu kỳ.

Vậy điều này khác với VLIW như thế nào? Sự khác biệt chính đầu tiên giữa VLIW và out-of-order là bộ vi xử lý out-of-order có thể chọn hướng dẫn từ các khối cơ bản khác nhau để thực hiện cùng một lúc. Những hướng dẫn này được thực thi một cách suy đoán (dựa trên dự đoán chi nhánh, chủ yếu). Điểm khác biệt chính thứ hai là các bộ vi xử lý không theo thứ tự xác định các lịch trình này theo cách động (tức là, mỗi lệnh động được lập lịch độc lập; trình biên dịch VLIW hoạt động trên các lệnh tĩnh). Sự khác biệt chính thứ ba là việc triển khai các bộ vi xử lý không theo thứ tự có thể rộng như mong muốn, mà không thay đổi bộ lệnh (Intel Core có 5 cổng thực thi, các bộ xử lý khác có 4, v.v.).

Hiệu suất khôn ngoan với các thông số kỹ thuật tương tự (bộ nhớ cache, lõi, v.v.) chúng chỉ đánh bại crap từ Itanium.

Vậy tại sao một người mua Itanium ngay bây giờ? Vâng, lý do duy nhất thực sự là HP-UX. Nếu bạn muốn chạy HP-UX, đó là cách để làm điều đó ...

Nhiều nhà biên dịch không nhìn thấy nó theo cách này - họ luôn thích thực tế rằng Itanium mang lại cho họ nhiều việc phải làm hơn, đưa họ trở lại kiểm soát, vv Nhưng họ sẽ không thừa nhận nó đã thất bại như thế nào.

+1

Cảm ơn. Một câu trả lời tuyệt vời! Các câu hỏi chờ đợi cho bạn quá lâu :-) Đối với báo giá, tôi tin rằng đó là từ Donald Knuth: http://www.informit.com/articles/article.aspx?p=1193856 –

+1

Tại sao không có ai tạo ra một kiến ​​trúc hướng dẫn mang thông tin bổ sung (về phụ thuộc, vv) để làm cho việc đặt hàng dễ dàng hơn/rẻ hơn? Sắp xếp tốt nhất trong cả hai cách tiếp cận. –

+0

Yacoder, cảm ơn vì thiếu ref :) –

3

Rất khó để viết trình tạo mã; và nó không có nhiều lý do để thành công ngay từ đầu (Nó do Intel tạo ra, vậy thì sao?).

Tôi đã nghe một số JIT cho hiệu suất kém hơn so với thông dịch viên trên Itanium vì gcc tối ưu hóa thông dịch viên tốt hơn; đó là không thể xử lý nếu một bộ xử lý yêu cầu rằng mức độ tối ưu hóa.

RISC không chính thống đang mất cơ sở; Họ không thấy điều đó hoặc hy vọng nó sẽ trở thành chủ đạo; quá tệ sẽ không phải vì không có lý do gì cho điều đó.

8

Đơn giản. Nó không tương thích với x86. Đó là lý do tại sao x86_64 là chip.

+2

Vâng, các chip PowerPC không tương thích x86, nhưng chúng không phải là một thất bại, ít nhất là trong Máy tính hiệu suất cao. Vì vậy, phải có một lời giải thích tốt hơn ... –

+2

Không. PowerPC đã làm việc vì Apple đã làm việc rất chăm chỉ để cung cấp một lớp mô phỏng cho 68000. Một lần nữa khi họ chuyển sang Core Duo. Tại mỗi thay đổi, phần lớn phần mềm hiện có vẫn tiếp tục chạy. Không có phần mềm hiện có nào chạy trên itanium, đó hoàn toàn là nguyên nhân của sự sụp đổ của nó. – SpliFF

+4

Hãy để tôi đặt nó theo một cách khác. Vào thời điểm các nhà phát triển phần mềm phát hành đã chờ đợi một thị trường khá tốt trước khi viết phần mềm cho nó và người mua PC đang chờ đợi một lượng khá lớn của phần mềm trước khi mua. – SpliFF

1

Tôi nghĩ Itanium vẫn có các hệ thống kết thúc thị trường cao cấp và máy chủ phiến HP. Hiệu năng vẫn cao hơn nhiều so với x86. Tôi không chắc tại sao một số người gọi nó là một thất bại khi nó tạo ra hàng tỷ đô la cho HP (mặc dù nó không chỉ là bộ vi xử lý; đó là doanh số máy chủ itanium đang tạo ra doanh thu).

3

Tôi đã đọc bài viết đó và tôi hoàn toàn bỏ lỡ "thất bại" mà anh đề cập đến. Khi ông đề cập đến gần cuối cùng, chỉ nhìn thấy Itanium, "một dự án hứa hẹn sau khi một dự án khác đã bị loại bỏ". MIPS, Alpha, PA-RISC - đã biến mất. Sun đã hủy bỏ hai dự án Sparc lớn cuối cùng của họ, mặc dù nó không phải là một người bán lớn ngay cả trước những người đó. PowerPC chỉ tồn tại trong không gian được nhúng.

Intel tiêu diệt tất cả các đối thủ cạnh tranh như thế nào, sử dụng một dòng sản phẩm duy nhất, bất kỳ thứ gì ngoài chiến thắng bộ vi xử lý lớn nhất mọi thời đại? Tôi chắc chắn rằng họ không đủ thông minh để dự đoán điều này, nhưng ngay cả khi họ biết nó sẽ thất bại, ném một vài tỷ $ tại một feint làm việc tuyệt vời. Dường như họ có thể chi trả cho nó, và mọi người khác chỉ chết.

Trên máy tính để bàn, trong phòng máy chủ và thậm chí cả trong siêu máy tính (87% trong danh sách top 500), nó tương thích với x86 xa như mắt có thể nhìn thấy. Nếu đó là kết quả của "sự thất bại" của Intel, thì những từ nào còn lại cho các bộ vi xử lý mà không làm làm cho nó?

Intel và Itanium, trong cuốn sách của tôi, xếp hàng ở đó với Microsoft và MS-DOS: bất chấp mức độ tệ hại của nó về mặt kỹ thuật, nó giúp họ hoàn toàn thống trị ngành.

EDIT: Và Itanium có khả năng tương thích x86 từ ngày 1, vì vậy không phải vậy. Nó chậm, nhưng nó đã ở đó.

+0

AFAIR, anh ấy không nói về sự thất bại của Intel, chỉ về "dự án Itanium" fiasco ... –

+2

Bạn có gọi MS-DOS một không fiasco, sau đó? Đó cũng là một tai nạn liên quan đến một sản phẩm kém kỹ thuật dẫn đến sự độc quyền lớn trong nhiều năm. – Ken

4

Itanium được thiết kế dựa trên triết lý song song mức lệnh rất rộng để thực hiện quy mô của bộ vi xử lý khi giới hạn tần số đồng hồ được áp đặt do hạn chế về nhiệt.

Nhưng AMD Opteron DISRUPTED Việc sử dụng Itanium bằng cách PROLIFERATING lõi x86_64 để đạt được hiệu suất có thể mở rộng và cũng tương thích với 32 bit x86 nhị phân.

Máy chủ Itanium gấp 10 lần x86 với số lượng bộ xử lý tương tự.

Tất cả những yếu tố trên làm chậm việc áp dụng các máy chủ Itanium cho thị trường chính thống. Thị trường chính của Itanium giờ đây là một sứ mệnh doanh nghiệp quan trọng, đó là một thị trường 10 tỷ đô la/năm tốt chỉ bị chi phối bởi HP, IBM và Sun.

Các vấn đề liên quan