BÀI TẬP LỚN KIẾN TRÚC MÁY TÍNH NÂNG CAO Đề số 27: Dịch nhận xét báo “Computing With Billion Transistor Chips” tác giả Guri Sohi HVTH: Lê Anh Huy MSHV: 00707169 GVHD: TS Đinh Đức Anh Vũ Nội dung báo cáo - Bản dịch vắn tắt (trang 2-7) - Nhận xét người dịch (trang 8-9) Tính toán với chip chứa hàng tỉ bóng bán dẫn Guri Sohi Khoa Khoa học Máy tính, Đại học Wisconsin 1210 W Dayton Street Madison, WI 53706 Vấn đề tính toán Mục đích việc phát triển hệ thống máy tính mạnh để đáp ứng yêu cầu ứng dụng đòi hỏi nhiều sức mạnh tính toán Vấn đề đặt tận dụng công nghệ có để cung cấp sức mạnh tính toán yêu cầu Có khía cạnh việc tính toán cần quan tâm: (i) Giải thuật mô tả tính toán, (ii) phần cứng thực tính toán, (iii) chương trình dịch chuyển đổi mô tả ngôn ngữ cấp cao sang dạng thức mà phần cứng hiểu Các khía cạnh có quan hệ với cách phức tạp xem xét cách cô lập Chương trình, thành phần quan trọng giải thuật cấu trúc liệu, biểu diễn tĩnh thao tác cần tiến hành ngôn ngữ cấp cao Chúng ta hiểu ngầm có tiến hành hóa chương trình tĩnh thành chuỗi thao tác động để thực thi Một chương trình giả định có chương trình tuần tự; chương trình phát biểu tường minh có nhiều sử dụng chương trình song song Trong trình thực thi chương trình, số thao tác cần giá trị tạo thao tác khác Giá trị ghi đọc vị trí lưu trữ thống thao tác Quá trình gọi trình giao tiếp thao tác Các máy tính mạnh có khả tiến hành việc hóa, thực thao tác giao tiếp thao tác mạnh Tiến hành công việc nói cách song song cách tận dụng sức mạnh hệ thống Trong trình chuyển đổi chương trình ngôn ngữ cấp cao thành dạng thức mà phần cứng hiểu được, chương trình dịch cố gắng phân tích chương trình xem song song hóa cách tự động hay không Quá trình song song hóa cách tự động có lẽ khía cạnh phức tạp trình dịch chương trình Trong kỷ nguyên máy RISC thập niên 1980, phần cứng khan hiếm, chip có khoảng 100 ngàn đến triệu bóng bán dẫn chương trình hóa với tỉ lệ lệnh nhiều chu kỳ máy Cơ chế ống lệnh giúp cải thiện tỉ lệ lên lệnh chu kỳ Tập lệnh biến đổi để thuận tiện cho chế ống lệnh thiết kế cho điều khiển cấp phần cứng tối thiểu Việc tối ưu hóa hiệu thực thi chương trình giao cho chương trình dịch Phần cứng tính toán Một vấn đề lựa chọn vi kiến trúc yêu cầu kết nối: số lượng kích thước dây dẫn cần thiết để kết nối thành phần Vấn đề kết nối quan trọng không tính luận lý ảnh hưởng đến tốc độ giá Các vấn đề quan trọng khác cần quan tâm độ phức tạp thiết kế (kéo theo độ phức tạp phê duyệt thiết kế), độ phức tạp trình kiểm thử mức tiêu thụ lượng Các vấn đề nói dẫn đến yêu cầu vi kiến trúc nên xây dựng từ thành phần giống nhau, đơn giản chuẩn hóa Độ phức tạp trình thiết kế phê duyệt thiết kế giảm số loại thành phần giảm thành phần thuộc hệ khác tương tự Các thành phần tương tự tạo thuận lợi cho việc thiết kế dây dẫn Về mặt lượng, việc có chế độ tiêu thụ lượng khác quan trọng Vi kiến trúc nên cho phép tắt số thành phần hay tận dụng tất tài nguyên tùy theo cần tiết kiệm lượng hay cần hiệu cao Điều yêu cầu vi kiến trúc nên xây dựng từ thành phần giống đó, việc tắt số thành phần giống làm giảm hiệu không làm thay đổi tính hệ thống 2.1 Sự hóa Có hai lựa chọn để cải thiện trình hóa chương trình: (i) dùng mạnh hay (ii) dùng nhiều Theo hiểu biết nay, với kỹ thuật dự đoán rẽ nhánh thực thi có dự đoán vi kiến trúc gồm nhiều rút trích nhiều song song hóa lớn Vi kiến trúc nhiều áp dụng cho chương trình song song vi kiến trúc nhiều xử lý hay cho chương trình vi kiến trúc nhiều ống lệnh Một dạng nâng cao trình hóa có hiểu biết Bộ dạng không nắm giữ thông tin lệnh được thực thi trước mà nắm giữ thông tin lệnh thực thi lệnh phụ thuộc vào lệnh thực thi Các thông tin truyền đạt tường minh nhờ chương trình dịch hay xác định động trình thực thi 2.2 Thực thao tác hỗ trợ đoán Có nhiều đổi kỹ thuật giảm độ trễ việc thực thi thao tác tính toán cách đoán giá trị toán hạng đầu vào để lên lịch thực tối ưu Người ta kỳ vọng việc đoán thành công nhiều thất bại nhờ vào tính đặn theo khuôn mẫu chương trình Sự hiệu việc đoán gắn liền với độ phức tạp trình đoán Mặc dù phần cứng đơn giản không hỗ trợ đoán, phần cứng hỗ trợ đoán không phức tạp có tương tự Một ví dụ minh họa chế đoán vị trí lưu trữ nhớ thứ cấp sử dụng 30 năm qua Trong kỷ nguyên chip hàng tỉ bóng bán dẫn, tin đoán sử dụng sâu rộng có giới hạn hiệu xuất Hầu xử lý đại áp dụng đoán điều khiển để khắc phục phụ thuộc điều khiển Những cách tiếp cận gần đề nghị áp dụng đoán phụ thuộc liệu để khắc phục phụ thuộc liệu mơ hồ đoán giá trị để khắc phục phụ thuộc liệu thực Những dạng đoán khác phát minh có nguyên nhân khác làm giới hạn hiệu xuất Một vấn đề quan trọng cần cân nhắc áp dụng đoán tiêu thụ lượng Có thể tắt bớt phần cứng hỗ trợ suy đoán để giảm việc tiêu thụ lượng vô ích nhận thấy tỉ lệ suy đoán không xác cao Đây lý cho việc cần có nhiều chế độ tiêu thụ lượng khác Một kỹ thuật giúp giảm nhu cầu đoán tái sử dụng câu lệnh Các nghiên cứu gần số lượng lớn thao tác thực thi lại với toán hạng, nghĩa sử dụng lại kết mà không cần tính toán Việc tái sử dụng câu lệnh cần hỗ trợ phần cứng lẫn phần mềm (chương trình dịch) 2.3 Giao tiếp thao tác hệ thống nhớ Hệ thống nhớ trở thành trung tâm nghiên cứu kiến trúc máy tính nhiều nhà nghiên cứu cho vấn đề hiệu suất thực hệ thống nhớ xử lý Tuy nhiên, theo quan điểm riêng tôi, lý lẽ không chặt chẽ yêu cầu tài nguyên nhớ liên quan đến cách xử lý tiến hành, nên xem xét hệ thống nhớ cách cô lập Hệ thống nhớ tập tài nguyên lưu trữ xem đơn mặt luận lý mặt vật lý thực nhiều tập tài nguyên lưu trữ khác Với chip hàng tỉ bóng bán dẫn, kỳ vọng nhiều tài nguyên dành cho cấu trúc lưu trữ nhằm cải thiện độ trễ băng thông, vốn số quan trọng hệ thống nhớ Tôi kỳ vọng thấy tài nguyên lưu trữ lưu trữ theo kiểu “hướng giá trị”, bên cạnh cách tổ chức lưu trữ truyền thống Một số lượng tài nguyên lưu trữ lớn không gian tên hệ thống nhớ, ta nghĩ đến việc tổ chức cấu trúc lưu trữ theo cách khác để hỗ trợ tốt cho việc giao tiếp thao tác (thao tác tạo giá trị thao tác sử dụng giá trị), giảm bớt việc phải truy xuất tổ chức nhớ phân cấp truyền thống Bộ xử lý nhớ tích hợp giai đoạn tới? Các chip hàng tỉ bóng bán dẫn chứa lượng lớn nhớ DRAM hệ thống nhớ chip Khi luận lý DRAM nên thuộc khối chưa biết Nếu chúng thuộc khối, tin thành phần lưu trữ dùng để phát triển dạng tổ chức lưu trữ khác lạ so với dạng truyền thống mà biết Phần mềm Một thay đổi lớn mà kỳ vọng thấy kỷ nguyên chip hàng tỉ bóng bán dẫn vai trò phần mềm, đặc biệt chương trình dịch Các chương trình dịch cố gắng thực dạng phân tích chương trình nhằm đưa đảm bảo tính đắn chương trình, ví dụ đảm bảo hai thao tác nhớ độc lập Nếu phần cứng dự đoán tự điều chỉnh, đảm bảo không cần thiết Thay vậy, chương trình dịch phân tích chương trình để gợi ý cho phần cứng phần thực song song Đặc biệt, phần cứng dự đoán phụ thuộc liệu, chương trình dịch đơn giản Tôi kỳ vọng có thay đổi từ ý niệm phần cứng đơn giản (cần chương trình dịch đảm bảo tính đắn chương trình) kỷ nguyên RISC sang phần cứng thông minh cần hỗ trợ mở rộng chương trình dịch, nghĩa phần cứng thông minh chương trình dịch đơn giản Những chức mở rộng mà chương trình dịch hỗ trợ phần cứng phương thức cải thiện việc dự đoán rẽ nhánh dự đoán giá trị thời gian chạy Giải thuật Tôi tin chip chứa hàng tỉ bóng bán dẫn khiến phải xem lại giải thuật cấu trúc liệu Hiện nay, giải thuật chia thành hai nhóm: (i) giải thuật (ii) giải thuật song song quy mô lớn (dành cho hệ thống máy tính song song quy mô lớn) Những giải thuật song song tìm cách giảm thời gian thực thi cách rút ngắn đường tới hạn (critical path) trình tính toán tổng số thao tác tính toán nhiều phiên Đối với giải thuật tuần tự, để giảm thời gian thực thi phải tối thiểu hóa số thao tác cần thực việc thu giảm đường tới hạn ý nghĩa mà thời điểm có thao tác thực thi Những chip chứa hàng tỉ bóng bán dẫn xem hệ thống “song song quy mô nhỏ” Do đó, đường tới hạn cửa sổ lệnh lẫn số thao tác tính toán quan trọng Ngoài ra, kích thước tổ chức cấu trúc liệu ảnh hưởng đến hiệu suất Tôi kỳ vọng có giải thuật song song quy mô nhỏ phù hợp với vi kiến trúc Kết luận 15 năm tới kỷ nguyên chip chứa hàng tỉ bóng bán dẫn Tôi kỳ vọng có đổi đáng kể vi kiến trúc cho phép sử dụng cách hữu ích chip để giải vấn đề tính toán Tôi kỳ vọng vi kiến trúc thay đổi vai trò chương trình dịch từ việc đảm bảo chương trình chạy sang việc cung cấp hỗ trợ nâng cao cho phần cứng Tôi kỳ vọng thấy đổi đáng kể giải thuật cấu trúc liệu để phù hợp với mô hình song song quy mô nhỏ bên chip Tham khảo [1] R Alverson, D Callahan, D Cummings, B Koblenz, A Porterfield, and B Smith, ‘‘The Tera Computer System,’’ in Proc Int Conference on Supercomputing, Amsterdam, pp 1-6, June 1990 [2] M S Lam and R Wilson, ‘‘Limits of Control Flow on Parallelism,’’ in Proc 19th Annual Symposium on Computer Architecture, Queensland, Australia, pp 46-57, May 1992 [3] M H Lipasti and J P Shen, ‘‘Exceeding the Dataflow Limit via Value Prediction,’’ Proc MICRO-29, December 1996 [4] A Moshovos, S E Breach, T N Vijaykumar, and G S Sohi, ‘‘Dynamic Speculation and Synchronization of Data Dependences,’’ Proc 24th Annual Symposium on Computer Architecture, June 1997 [5] A Sodani and G S Sohi, ‘‘Dynamic Instruction Reuse,’’ Proc 24th Annual Symposium on Computer Architecture, June 1997 [6] G S Sohi, S E Breach, and T N Vijaykumar, ‘‘Multiscalar Processors,’’ in Proc 22th Annual International Symposium on Computer Architecture, Santa Margherita Ligure, Italy, June 1995 Nhận xét người dịch Bài báo viết vào năm 1997, mà số lượng bóng bán dẫn chip tăng lên đến hàng tỉ Trong báo này, tác giả gọi khoảng thời gian tới, đặc biệt 15 năm sau đó, kỷ nguyên chip chứa hàng tỉ bóng bán dẫn đưa dự báo thay đổi việc tính toán thời gian tới để tận dụng sức mạnh công nghệ Tác giả phân tích toàn diện mặt việc tính toán từ phần cứng, phần mềm, giải thuật đến chế thực thi chương trình Đến thời điểm này, ta có số nhìn nhận nhận xét dự đoán tác giả Về mặt phần cứng, nhiều vấn đề tác giả đề cập báo trở nên quen thuộc ngày hôm Vấn đề chuẩn hóa tác giả đề cập đến mười năm trước người thừa nhận đến thừa nhận xu hướng phát triển tất yếu không lĩnh vực phần cứng Về mặt thiết kế chip, vấn đề mà tác giả nhấn mạnh vấn đề kết nối độ phức tạp (thiết kế, phê duyệt, kiểm thử) thách thức hãng công nghệ Vấn đề lượng mà tác giả đề cập đến trở thành vấn đề quan tâm Đối với hệ thống lớn, vấn đề lượng tiêu thụ liên quan mật thiết đến khía cạnh kinh tế (điện năng, thiết bị làm lạnh, xử lý nhiệt thải, phòng chuyên dụng ) khía cạnh môi trường Đối với thiết bị cá nhân, thời gian sử dụng liên tục mà không cần nạp lượng tiêu chí cạnh tranh quan trọng Về vai trò chương trình dịch, dự báo tác giả việc phần cứng đảm nhiệm phần đáng kể công việc truyền thống chương trình dịch chưa diễn nhiều lý khác Mặc dù phần cứng mạnh nhiều nhu cầu tính toán ứng dụng tăng lên không ngừng Chưa kể, ý tưởng chuyển lượng lớn công việc sang cho phần cứng đảm nhiệm để tận dụng hiệu phần cứng mâu thuẫn với nhu cầu tiết kiệm lượng thân thiện với môi trường Mặc khác, có nhu cầu đơn giản hóa chương trình dịch công đoạn dịch chương trình có thời gian tương đối rộng rãi thường phải làm lần Về giải thuật cấu trúc liệu, chưa thấy có thay đổi đáng kể để tận dụng vi kiến trúc kỳ vọng tác giả Các giải thuật thuộc hai nhóm giải thuật song song (trên hệ thống máy tính song song) chưa thấy xuất dạng giải thuật song song quy mô nhỏ dành riêng cho vi kiến trúc nói Việc song song hóa ứng dụng cách tự động thuộc trình biên dịch hay phần cứng Nhìn chung, nói tác giả phân tích toàn diện có nhận định tương đối xác tác động công nghệ bán dẫn đến vấn đề tính toán (phần cứng, phần mềm, giải thuật), đặc biệt phần cứng 10 ... trích nhiều song song hóa lớn Vi kiến trúc nhiều áp dụng cho chương trình song song vi kiến trúc nhiều xử lý hay cho chương trình vi kiến trúc nhiều ống lệnh Một dạng nâng cao trình hóa có hiểu biết... kiến trúc cho phép sử dụng cách hữu ích chip để giải vấn đề tính toán Tôi kỳ vọng vi kiến trúc thay đổi vai trò chương trình dịch từ việc đảm bảo chương trình chạy sang việc cung cấp hỗ trợ nâng. .. 8-9) Tính toán với chip chứa hàng tỉ bóng bán dẫn Guri Sohi Khoa Khoa học Máy tính, Đại học Wisconsin 1210 W Dayton Street Madison, WI 53706 Vấn đề tính toán Mục đích việc phát triển hệ thống máy