• Thứ Ba, 19/09/2006 09:26 (GMT+7)

    Tổng quan chip lõi kép - Phần cứng đợi phần mềm

    Nhìn chung, xu thế xử lý song song là điều tất yếu khi xung nhịp của các bộ xử lý đạt tới đỉnh và chi phí để "vắt thêm" hiệu năng sẽ đặc biệt đắt đỏ. Mặc dù lý thuyết về sức mạnh của các BXL lõi kép hết sức thuyết phục nhưng trên thực tế còn một vấn đề khá lớn để người dùng có thể tận hưởng sức mạnh đa xử lý.

    Không cần biết hệ thống máy tính hiện tại của bạn có tốc độ nhanh như thế nào, chỉ trong vòng một hoặc hai tháng tới, nền công nghiệp máy tính với guồng quay khổng lồ của nó sẽ lại sản sinh ra những món "đồ chơi" mạnh mẽ hơn rất nhiều. Thế hệ sản phẩm tiếp theo sẽ nhanh hơn, nhiều tính năng hơn và đặc biệt có giá thấp hơn, làm chiếc máy tính hiện hành của bạn trở nên già cỗi. Các công ty sản xuất cũng như bán hàng đều sử dụng rất nhiều "tuyệt chiêu" nhằm gia tăng sức mua của người dùng cuối. Họ luôn cân đối được giữa vấn đề tiếp thị và bán những món hàng "hot" đồng thời đưa ra những thông tin hấp dẫn về thế hệ sản phẩm mới để hút sự chú ý của khách hàng.

    Intel đã "tuân thủ” sát sao tiêu chí này trong nhiều năm qua, luôn tạo ra những sản phẩm mới tốt hơn rất nhiều so với thế hệ cũ nhưng gần đây lại có nhiều thay đổi. Khi bộ xử lý (BXL) Pentium D mới chỉ xuất hiện được gần 3 tháng, Intel đột nhiên hé mở thông tin về thế hệ sản phẩm tiếp theo với tên mã Merom. Và trong khi những sản phẩm Pentium D còn đang nóng hổi trong tay người dùng Intel lại tuyên bố cấu trúc mới sẽ cho hiệu năng cao hơn, tiêu thụ ít điện và "ngon" hơn nhiều so với dòng sản phẩm hiện tại.

    Mặc dù những thông tin này khiến cho nhiều "tay chơi" cũng như người say mê công nghệ thèm khát nhưng câu hỏi đặt ra là liệu bạn sẽ mua ngay BXL Pentium D 800 hay chờ tới cuối năm 2006 để mua thế hệ Merom mới? Dĩ nhiên, còn một lựa chọn thứ ba là BXL AMD Athlon 64 X2.

    Bất chấp phản hồi "âm tính" từ cộng đồng "dân chơi" tốc độ về tỉ lệ hiệu năng/xung nhịp khá kém, tiêu thụ nhiều điện và tỏa nhiều nhiệt, Pentium D vẫn được bán ra khá nhiều do giá rẻ hơn hẳn Athlon 64 X2 của AMD. Mặc dù không thể phủ nhận sự ưu việt của X2 nhưng mức giá của Intel đã tạo cơ hội cho nhiều người dùng ít tiền được nếm trải hương vị sức mạnh xử lý lõi kép.

    Trong tháng 1 vừa qua, Intel đã thổi một luồng sinh khí mới vào dòng sản phẩm Pentium D thông qua series chip 900, dựa trên cấu trúc Netburst cũ, trước khi thế hệ CPU mới được tung ra thị trường vào cuối năm nay. Được trang bị công nghệ 65nm, bộ nhớ đệm lớn, xung nhịp cao hơn, Intel thực sự muốn tạo một dấu mốc ấn tượng trước khi hoàn toàn rũ bỏ Netburst để chuyển sang cấu trúc mới.

    Cấu trúc Presler - thừa kế và phát huy

    Phiên bản lõi kép đầu tiên của Intel dường như là sự vội vã trước sức ép của AMD và có vấn đề về phương diện sức mạnh xử lý. Với tên mã Smithfield, Pentium D 800 đầu tiên giống như được "đính" hai CPU Prescott lại với nhau trên một đế và hiện thực hóa CPU ảo Hyper-Threading (HT) thành CPU vật lý thực sự, mỗi lõi này có cấu trúc tương tự chip Pentium 4 1MB bộ đệm L2. Pentium D 800 được trang bị tập lệnh mở rộng EMT64 hỗ trợ đánh địa chỉ nhớ 64bit. Xung nhịp của Front Side Bus (FSB) được đặt ở mức 800MHz trên nền tảng chipset Intel 945P, 945G, 955X, E7230… Vấn đề đầu tiên các CPU này gặp phải chính là hiện tượng thắt cổ chai dữ liệu vì băng thông vẫn hạn chế ở mức 800MHz/CPU hay 400MHz cho mỗi lõi giống như thế hệ Pentium 4 Willimatte đầu tiên.

    Dòng CPU Pentium D 900 và thế hệ Pentium Extreme Edition tương ứng vẫn được xây dựng dựa trên cấu trúc Netburst từ thời Pentium 4 cũ. Tuy nhiên vi kiến trúc mới với tên mã Presler ẩn chứa nhiều điều thú vị. Presler là sự kế thừa Smithfield, cấu trúc hiện diện trong thế hệ chip lõi kép Pentium D 800 đầu tiên của Intel. Ngoài việc tiên phong trong dòng sản phẩm số lượng lớn sản xuất theo quy trình 65nm mới, Pentium D/EE Presler còn có hiệu năng cao hơn, nhiều tính năng mới và sử dụng ít điện hơn Smithfield.

    Ban đầu, cấu trúc lõi kép của Intel được thiết kế với hai nhân nằm trên một đế chip silicon (die). Việc đặt hai lõi chip lên một đế có vẻ là ý tưởng hay vì hai lõi càng gần nhau, việc giao tiếp giữa chúng càng nhanh chóng hơn do độ trễ thấp. Tuy nhiên mặt trái của cấu trúc này càng ngày càng lộ rõ vì với cách thức thiết kế như vậy, số transistor trên mỗi die tăng gấp đôi khiến cho việc sản xuất gặp nhiều khó khăn với các tác nhân như nhiệt độ, giá thành, điện thế tiêu thụ...

    Thiết kế mới Presler đi theo một hướng hoàn toán khác, thay vì đặt cả hai nhân vào một đế chip, Intel quyết định tách rời hẳn chúng ra và mỗi nhân được sản xuất độc lập và gắn lại chung với nhau trên một con chip. Nhìn một cách tổng quát hơn, thay vì một lõi lớn với 2 nhân chip bên trong, bạn sẽ có hai lõi nhỏ kết nối với nhau qua một mạch thông tin tốc độ cao. Mô hình này khiến cho Pentium D Presler trở thành cấu trúc lõi kép (Dual Core) thực sự chứ không phải là lõi đôi (Double Core) như Smithfield trước kia. Việc sản xuất nhờ vậy đơn giản hơn vì mỗi core được sản xuất riêng và việc đóng gói độc lập sẽ bớt phức tạp và cồng kềnh. Hệ quả tất yếu của vấn đề này là giá thành giảm, có lợi hơn cho người dùng cuối. Trên phương diện thị trường, tỉ lệ giá/xung nhịp của Pentium D 900 thấp hơn so với dòng 800 cũ, hơn thế nữa, nó được trang bị nhiều tính năng mới hơn.

    Mỗi core được "tặng kèm" 2MB bộ đệm L2 so với chỉ 1MB trước kia. Như vậy Pentium D 900 có tới 4MB bộ đệm trên chip (2x2MB), gấp đôi so với Athlon 64 X2 của AMD. Điểm yếu về kích thước đã được bù đắp bởi công nghệ 65nm nên kích thước core hầu như không thay đổi. Một thế mạnh khác là xung nhịp có thể tăng lên khá cao so với kiểu cấu trúc 90nm cũ. Chính vì thế, thay vì mắc kẹt ở 3,2GHz như dòng Pentium D 800, thế hệ 900 mới hoạt động mát mẻ hơn nhiều ở mức 3,4GHz và dự kiến sẽ tăng nhanh trong 6 tháng tới. Ngoài ra, khả năng mở rộng FSB lên mức 1066MHz sẽ phần nào giải quyết vấn đề nghẽn dữ liệu để gia tăng tốc độ xử lý của toàn hệ thống (tham khảo so sánh thông số kĩ thuật và cấu trúc chip trong những hình ảnh sau:

    Cấu trúc AMD Athlon64 lõi kép - Đỉnh cao sức mạnh

    Cấu trúc của Intel Pentium D buộc hai lõi giao tiếp với nhau thông qua FSB ngoài. Chính vì thế nó khá chậm, ngay cả thế hệ Presler mới nhất cũng không tránh khỏi hạn chế này. Cấu trúc của AMD có nhiều ưu điểm hơn nhờ một phần kế thừa từ cấu trúc tích hợp chipset cầu bắc lên CPU. Mặc dù từ trước đến nay, chúng ta chỉ hiểu nó là khối điều khiển bộ nhớ được tích hợp lên CPU, khi AMD tung ra thế hệ lõi kép, cấu trúc này một lần nữa lại phát huy tác dụng. Thay vì phải truyền thông tin qua FSB giữa hai lõi, AMD Dualcore đưa ra các yêu cầu trên hệ thống SRQ (System Request Queue) và khi tài nguyên hệ thống rỗi, các yêu cầu này sẽ được gửi tới lõi để thực hiện. Các bước này hoàn toàn chỉ thực hiện trên die của CPU nên tốc độ rất nhanh. Ưu điểm này thể hiện rất rõ khi tính toán và xử lý các ứng dụng nhiều tiểu trình (Multitasking/Multithreaded). Chính vì vậy mà các BXL AMD Athlon X2 có hiệu năng làm việc trội hơn Pentium D của Intel. Tuy nhiên cũng giống như Intel, chip lõi kép của AMD vẫn chịu ảnh hưởng của băng thông. Để giữ tính tương thích với những nền tảng hiện tại là Socket 940 và 939, AMD không thể tăng cường số chân cắm cho chip lõi kép. Đây là một con dao hai lưỡi vì ngoài việc cho phép người dùng sử dụng chip mới trên các hệ thống sẵn có thì băng thông bộ nhớ vẫn chỉ đạt mức 128bit rộng và tốc độ 400MHz mà thôi. Chính vì thế, nếu trước kia chip đơn Athlon 64 và Opteron được hỗ trợ bởi băng thông RAM 6,4GB/s thì ngày nay, CPU lõi kép cũng chỉ được cấp mức đó cho cả hai lõi chia đôi với nhau.

    Giải pháp cho vấn đề này của AMD sẽ được thực hiện khi nền tảng AM2 với bộ nhớ DDR2 trở nên thông dụng hơn, còn hiện tại, người dùng cuối vẫn chưa có cách nào vượt qua được giới hạn về bộ nhớ. Mặc dù Intel đã đặt chân lên thế giới DDR2 từ cách đây khá lâu nhưng chip Pentium D vẫn chỉ hoạt động trên hệ thống bus nhớ 64bit 800MHz mà thôi (nên điểm yếu của họ hiện nay là FSB chứ không phải bộ nhớ).

    Hiện tại, AMD công bố hàng loạt các sản phẩm mới lõi kép dưới các dòng thương hiệu truyền thống của họ bao gồm Athlon 64 X2 dành cho máy để bàn, Athlon FX dành cho các hệ máy cao cấp, Opteron cho máy trạm, máy chủ đòi hỏi tốc độ xử lý cực nhanh. Đối với Opteron, các chỉ số định danh được sử dụng để xác định thuộc tính của mỗi loại chip. Ví dụ, Opteron 252 và 852 cùng hoạt động ở xung nhịp 2,6GHz nhưng 252 được sử dụng cho máy chủ với 2 chip song song còn 852 có khả năng kết hợp trong hệ thống 8 CPU cao hơn. Để dễ nhớ hơn, con số đầu tiên thể hiện số CPU có thể chạy song song trong một hệ thống, ví dụ 1,2,8. Ba thành viên lõi kép mới của dòng họ Opteron là x65, x70 và x75. Đối với Athlon 64, chip 4000+ đánh dấu sự khép lại của kỉ nguyên lõi đơn và tất cả các dòng chip cao hơn 4000+ sẽ được trang bị lõi kép với tên thương hiệu Athlon 64 X2 ví dụ 4200+ hay 4800+. Dòng chip Athlon FX lõi kép được bắt đầu từ FX-60 hoạt động ở xung nhịp 2,6GHz.

    Vấn đề quanh chip lõi kép

    1. Tính tương thích ngược

    Nếu chip lõi kép của Intel bao gồm Pentium D và Extreme Edition buộc người dùng phải mua bo mạch chủ (BMC) với chipset mới như 945/955/975 thì AMD (như đã đề cập từ phần trên) thoải mái hơn rất nhiều do người dùng vẫn có thể sử dụng hầu hết những BMC dành cho chip đơn lõi cũ. Đối với các hệ máy chủ, máy trạm, nếu bạn có BMC hỗ trợ Opteron 90nm, bạn chỉ cần cập nhật BIOS để chạy Opteron lõi kép. Tuy nhiên nếu đang sử dụng các dòng bo cũ hơn, bạn sẽ phải mua cái mới. Trên hệ thống máy để bàn, toàn bộ Series Athlon 64 X2 hoàn toàn tương thích với các BMC socket 939. Bạn chỉ cần cập nhật phiên bản BIOS mới là xong. Chính khả năng nâng cấp từ chip lõi đơn lên lõi kép đơn giản như vậy khiến cho Athlon 64 X2 đạt được nhiều thành công hơn mong đợi mặc dù các nhà sản xuất BMC không thích điều này cho lắm.

    2. Các tiểu trình

    Về lý thuyết, một tiểu trình (thread) là một luồng dữ liệu đi vào bộ vi xử lý của hệ thống. Mỗi ứng dụng đều tạo cho riêng nó một hay nhiều thread khác nhau tùy thuộc vào công việc đang thực hiện. Với cấu trúc đa nhiệm hiện nay, CPU chỉ có thể xử lý một thread mỗi thời điểm nên phải chuyển đổi liên tục từ thread này sang thread khác và xử lý dữ liệu tương ứng với việc người dùng làm việc với nhiều chương trình cùng lúc. Chính vì có nhiều BXL hoạt động song song nên hệ thống cùng lúc giải quyết nhiều thread và mỗi BXL sẽ đảm nhận một luồng dữ liệu độc lập. Nhờ thế hiệu năng toàn hệ thống sẽ tăng cao đặc biệt với những máy chủ lớn phải xử lý nhiều luồng dữ liệu liên tục như máy chủ thư tín, web…

    Intel đã và đang sử dụng công nghệ HT đối với một số dòng chip của họ. Đây là một khái niệm hoàn toàn khác với Multithreading, nó được tích hợp trên một lõi đơn của CPU để "đánh lừa" hệ điều hành nhận ra nhiều BXL. Công dụng thực tế của nó là tăng tốc độ chuyển giữa các thread của hệ thống và nâng cao khả năng xử lý đa nhiệm trên máy tính.

    3. Ứng dụng hỗ trợ

    Mặc dù lý thuyết về sức mạnh của các BXL lõi kép hết sức thuyết phục nhưng trên thực tế còn một vấn đề khá lớn để người dùng có thể tận hưởng sức mạnh đa xử lý, đó là phần mềm được sử dụng trên máy tính phải hỗ trợ xử lý song song nhiều thread cùng lúc. Nếu không có điều kiện này, một phần mềm bình thường sẽ chỉ gửi các luồng dữ liệu của nó vào một lõi duy nhất và hầu như không có sự cải thiện nào về tốc độ.

    Tuy nhiên, bạn không cần phải quá lo lắng vì những hệ điều hành lớn thông dụng nhất đều được lập trình sẵn hỗ trợ đa xử lý. Cho dù khả năng này phải được đưa vào từng ứng dụng đơn lẻ thì tốc độ mới thực sự được cải thiện đáng kể. Thật đáng buồn là đa số các phần mềm cho người dùng đơn lẻ chưa được viết theo cách này nên chưa phát huy được sức mạnh đa xử lý. Nếu bạn thấy hơi khó hiểu, chúng ta sẽ đi vào một ví dụ đơn giản là game máy tính. Mỗi trò chơi đều yêu cầu một vài cơ cấu dựng hình các sự kiện trong game và một vài dạng trí tuệ nhân tạo nào đó của nhà sản xuất. Đối với một BXL đơn lõi, cả hai yếu tố này đều được thực hiện "song song" nhưng theo kiểu chuyển đổi liên tục thread. Nếu như bạn chạy hệ thống CPU lõi kép, mỗi lõi sẽ đảm nhận một nhiệm vụ (một lõi cho trí tuệ nhân tạo, một lõi cho tính toán các hiệu ứng vật lý) và tốc độ sẽ được cải thiện khá nhiều.

    Tất nhiên, các trò chơi hiện nay chưa có nhiều phiên bản hỗ trợ đa xử lý và hầu hết chúng đều dồn dữ liệu cho một lõi duy nhất xử lý nên khi thử nghiệm, ưu thế tốc độ của các BXL lõi kép chưa thực sự rõ rệt. Tuy nhiên một khi các nhà lập trình tiến hành cải tiến, sự khác biệt sẽ khiến cho bất cứ người dùng nào cũng phải nhắm tới các hệ thống lõi kép đa xử lý.

    4. Xung nhịp

    Đại đa số người sử dụng máy tính quen với khái niệm xung nhịp cao hơn thì BXL sẽ hoạt động hiệu quả hơn. Đối với chip lõi kép, vấn đề này sẽ càng phức tạp hơn. Nếu để ý, bạn sẽ thấy những BXL lõi lép đầu tiên đều hoạt động ở xung nhịp thấp hơn các BXL đơn lõi. Về lý thuyết, một CPU với hai lõi hoạt động ở 1GHz sẽ tương đương sức mạnh với một CPU lõi đơn 2GHz nhưng điều đó chỉ đúng khi các ứng dụng phát huy được khả năng tính toán đa nhiệm. Nếu điều này chưa trở thành hiện thực thì phần mềm chạy trên hệ thống đơn lõi vẫn sẽ nhanh hơn so với lõi kép.

    Nhìn chung, xu thế xử lý song song là điều tất yếu khi xung nhịp của các BXL đạt tới đỉnh và chi phí để "vắt thêm" hiệu năng sẽ đặc biệt đắt đỏ. Mặc dù với cấu trúc của các BXL hiện đại, cả AMD và Intel đều có khả năng đẩy xung nhịp của những "đứa con cưng" lên thêm nữa nhưng lúc đó vấn đề nhiệt độ cũng như điện năng lại vượt quá mức thông thường của máy tính để bàn. Chính vì thế, sẽ sáng suốt hơn nếu chia công việc cho nhiều BXL cùng làm. Ý tưởng về xử lý song song cho máy tính để bàn được sử dụng đầu tiên trong khái niệm HT của Intel. Tuy không thực sự "đa nhiệm" trên lý thuyết nhưng không thể phủ nhận việc công nghệ này giúp cho hệ điều hành tận dụng hiệu quả hơn từ 5-10% sức mạnh của CPU. Tuy nhiên, ngay từ khi đó, việc tắt HT để tránh bị giảm hiệu năng xử lý của một số ứng dụng nhất định đã xuất hiện và nhiều người dùng đã gặp phải vấn đề này.

    Thật may mắn khi trước thế hệ CPU lõi kép, chúng ta có siêu luồng HT đi "tiền trạm" cho các nhà lập trình sửa đổi phần mềm của họ theo hướng xử lý song song. Có thể nói, với Hyper-Threading, Intel thực sự đã trải thảm nhung cho các thế hệ chip lõi kép về sau. Trong vòng 1 đến 2 năm tới, bạn sẽ chứng kiến sự thay đổi mạnh mẽ của nền công nghiệp phần mềm hỗ trợ cho tính toán song song và người dùng cuối sẽ thực sự được hưởng lợi nhiều hơn từ những bộ vi xử lý lõi kép.

            Pentium-D 900 Series     Pentium-D 800 Series     Athlon 64 X2 Series  
      Tên mã     Presler     Smithfield     Manchester (1MB)
    Toledo (2MB)
     
      Công nghệ sản xuất     65 nm     90 nm     90 nm  
      Xung nhịp     2,8 – 3,4 GHz     2,8 – 3,2 GHz     2,0 – 2,4 GHz  
      Bộ đệm L2/lõi     16k L1, 2 MB L2     16k L1, 1 MB L2     128k L1, 1 MB L2 (Toledo)
    128k L1, 512k L2 (Manchester)
     
      Front Side Bus     800 MHz     800 MHz     Không có  
      Khối điều khiển bộ nhớ tích hợp     Không     Không     Dual Channel DDR-400  
      Công nghệ tiết kiệm điện     Enhanced SpeedStep EIST     Enhanced SpeedStep     Cool n Quiet  
      Hỗ trợ 64-bit     EM64T     EM64T     AMD64  
      NX Bit              
      SSE     SSE/2/3     SSE/2/3     SSE/2/3  
      Công nghệ Virtualization         Không     Không  

    Nguyễn Thúc Hoàng Linh
    valkyrie.lenneth@usa.com

    ID: A0604_121