VIET Magazine 518: Super Micro Computer

CÂU CHUYN V“ KHOA HC HIN ñI:
SUPER MICRO COMPUTER

HI SA
HiŒn nay, máy ÇiŒn toán cá nhân (Personal Computer, g†i t¡t là PC) Çang bành trܧng và rÃt thông døng trong Ç©i sÓng hàng ngày cûa chúng ta. Không nh»ng th‰, càng ngày các loåi "chíp" vi tính (micro processor chip) càng ÇÜ®c phát tri‹n và thi‰t k‰ tÓi tân hÖn, nhanh hÖn, g†n hÖn, Çåi khái là tÓt hÖn xÜa. HiŒn nay, có th‹ nói thông døng nhÃt là chíp vi tính "Pentium" cûa hãng "Intel", và "POWER PC" do hãng IBM thi‰t k‰ vŠ phÀn ki‰n trúc và hãng "Motorola" sän xuÃt. Ngoài ra, còn nh»ng chíp vi tính khác nhÜ RISC 700... Càng ngày m†i công viŒc NJu phäi d¿a vào b¶ máy ÇiŒn toán, do Çó næng suÃt cûa máy càng Çòi hÕi vào khä næng cung Ùng cûa máy. "Super Computer" (Máy ÇiŒn toán siêu Ç£ng) Çã ÇÜ®c thi‰t k‰ nhÜng s¿ to l§n cÒng kŠnh, và Çòi hÕi m¶t môi trÜ©ng Ç¥c biŒt cho máy hoåt Ƕng. V§i kÏ thuÆt tân ti‰n, các kÏ thuÆt gia Çã áp døng nh»ng ki‰n trúc thÀn kÿ cûa hŒ thÓng "super computer" vào chíp vi tính. Tuy không lË b¢ng "super computer" do s¿ khác biŒt cûa kÏ thuÆt måch ÇiŒn, nhÜng s¿ nhÕ nh¡n, g†n gàng khi‰n viŒc áp døng tính chÃt "super" vào k› nguyên ÇiŒn toán truyŠn thông, và nh»ng kÏ thuÆt mang tính chÃt "real-time" (th©i gian tác th¿c") ÇÜ®c dÍ dàng và h»u hiŒu. HS tåm g†i là nh»ng hŒ thÓng "Super Micro-Computer).

TØ xÜa, con ngÜ©i luôn luôn có khuynh hܧng phát tri‹n Nj tæng ti‰n hÖn cho bÃt cÙ m¶t vÃn NJ gì. Trong thÆp niên 80 vØa qua, hŒ thÓng ÇiŒn toán Çi tØ nh»ng b¶ máy ÇiŒn toán ÇÒ s¶ qua nh»ng b¶ máy ÇiŒn toán nhÕ nh¡n nhÜng låi có khä næng không kém gì mÃy. Tuy vÆy, máy PC này vÅn chÜa hoàn toàn thay th‰ h£n, và ÇÒng th©i s¿ phát tri‹n kÏ thuÆt m§i rÃt lË khi‰n chúng ta t¿ hÕi "v§i Çà ti‰n tri‹n này tÜÖng lai hŒ thÓng máy ÇiŒn toán së Çi t§i Çâu?". ThÆt ra, khä næng cûa nh»ng máy ÇiŒn toán l§n vÅn còn lË hÖn nh»ng b¶ máy ÇiŒn toán hiŒn Çåi m§i và nhÕ (micro computer), không nh»ng th‰ quá trình hoåt Ƕng trong m¶t th©i gian dài bäo Çäm s¿ h»u hiŒu và chính xác.

Ngày xÜa, khä næng hoåt Ƕng ÇÜ®c Ço b¢ng sÓ lÜ®ng thi hành các "instructions" (processor codes) trong m¶t giây ÇÒng hÒ. Nh»ng máy ÇiŒn toán l§n trang bÎ nhiŠu "memory", "hardware" có khä næng thi hành "instruction" v§i sÓ lÜ®ng cao, và nhiŠu "programs" khó khæn và phÙc tåp thÆt mau lË ÇÜ®c coi nhÜ là m¶t hŒ thÓng ÇiŒn toán siêu Ç£ng (super computer). Hai hŒ thÓng ÇiŒn toán "IBM Stretch" và "Univac LARC" là hai hŒ thÓng ÇÀu tiên ÇÜ®c coi nhÜ "super computer". Cä hai hŒ thÓng ÇÜ®c thi‰t k‰ và ch‰ tåo vào cuÓi thÆp niên 50. NhÜng ngày nay cä hai hŒ thÓng này NJu "vŠ hÜu" và ÇÜ®c thay th‰ b¢ng nh»ng hŒ thÓng mau lË và h»u hiŒu hÖn cä chøc lÀn.

Trong bÓn mÜÖi næm qua, khä næng thi hành sÓ lÜ®ng "instructions" (thÜ©ng ÇÜ®c Ço b¢ng ÇÖn vÎ triŒu instructions, thí dø nhÜ 100 Mips; 100 Mega instruction per second) càng gia tæng, gÀn nhÜ gÃp Çôi m‡i næm. Ngày nay, máy có th‹ chåy v§i vÆn tÓc gÀn nhÜ cä t› "instructions" (2026 Mips) trong m¶t giây ÇÒng hÒ. ñ‹ Çåt ljn khä næng Çó, hŒ thÓng ÇiŒn toán phäi nh© vào nh»ng ki‰n trúc Ç¥c biŒt và tân kÿ trong ngành ÇiŒn toán. S¿ mau lË và l§n không Çû Nj ÇÜ®c mŒnh danh là "Super computer" nhÜ xÜa n»a. Nó Çòi hÕi hŒ thÓng Çó phäi có khä næng và tÓc Ƕ hoåt Ƕng hÖn cä tÓc Ƕ måch ÇiŒn cûa chính nó. MuÓn ÇÜ®c nhÜ vÆy, nh»ng ki‰n trúc "Parallel processing" (giäi tính song song), "Pipeline processing" (giäi tính dây chuyŠn) ÇÜ®c thi‰t k‰ vào hŒ thÓng ÇiŒn toán. Nh»ng hŒ thÓng này m§i ÇÜ®c g†i là "super". Ch¡c các bån không lå gì vŠ hŒ thÓng "Super Computer" mang tên "Cray" Ƕc chi‰m ngôi vÎ "super" khá lâu. Ngày nay, NhÆt Bän cÛng muÓn tung ra m¶t hŒ thÓng "super computer" Nj cånh tranh v§i "Cray". Nh»ng kÏ thuÆt áp døng ÇiŒn toán vào công viŒc giäi tính hình änh, video, âm thanh Nj nâng cao phÄm chÃt và cung Ùng tính chÃt "real time" (th©i gian tác th¿c) cÀn phäi có nh»ng hŒ thÓng "super" cûa máy ÇiŒn toán. NhÜng nh»ng hŒ thÓng"super computer" quá l§n, kÒng kŠnh và cÀn nh»ng môi trÜ©ng Ç¥c biŒt nhÜ phòng lånh v§i nh»ng ki‰n trúc cÀu kÿ Nj dùng cho máy, do Çó rÃt bÃt tiŒn cho viŒc dùng hŒ thÓng "super computer" này. ñó là chÜa k‹ ljn giá cä cûa máy rÃt cao, và tiŠn phí t°n cho máy hoåt Ƕng. Vì th‰, nh»ng ki‰n trúc Ç¥c biŒt này ÇÜ®c thâu g†n và áp døng vào nh»ng hŒ thÓng ÇiŒn toán nhÕ, mà chúng ta së thÃy trong tÜÖng lai rÃt gÀn. ñó là nh»ng hŒ thÓng "Super Micro-Computer" së lan tràn trong thÎ trÜ©ng ÇiŒn toán.

ñ‹ tìm hi‹u thêm vŠ nh»ng Ç¥c Çi‹m thi‰t k‰ "parallel processing" và "pipeline processing", chúng ta hãy xem qua thí dø sau. B¶ máy vi tính nhÜ m¶t thÜ kš giúp viŒc së thi hành m¶t công tác do anh giao phó gÒm nh»ng l©i cæn d¥n theo thÙ t¿ cûa anh. Thí dø nhÜ sau:

1) LÃy t© giÃy tính ÇÀu tiên.

2) B¡t ÇÀu tØ hàng thÙ nhÃt.

3) C¶ng con sÓ c¶t A v§i c¶t B.

4) Vi‰t k‰t quä vào c¶t C, cùng hàng.

5) Qua hàng k‰.

6) N‰u còn hàng thì trª vŠ l©i d¥n sÓ 3 và ti‰p tøc.

7) ñ‹ t© giÃy vô h¶p có ghi tháng 5.

8) LÃy t© giÃy k‰.

9) N‰u còn ghi ngày trong tháng 5, trª vŠ l©i d¥n sÓ hai và ti‰p tøc.

10) VÆy là xong, ljn g¥p tôi Nj nhÆn công tác m§i.

Công viŒc trên tÜÖng t¿ nhÜ s¿ hoåt Ƕng cûa m¶t b¶ máy vi tính. Nh»ng l©i d¥n là "instruction", nguyên nh»ng d¥n Çó là m¶t "program". Và b¶ máy vi tính së tuÀn t¿ thi hành tØ l©i d¥n 1 cho ljn 9 cho t§i khi xong công viŒc. TÓc Ƕ thi hành bình thÜ©ng do s¿ lanh lË cûa b¶ máy nhÜng vÅn bÎ gi§i hån. ñ‹ tæng cÜ©ng s¿ mau lË này, chúng ta có th‹ dùng hai máy vi tính cùng làm viŒc song song thì công viŒc có th‹ nhanh hÖn gÃp rÜ«i ho¥c gÀn gÃp Çôi. Có lë bån rÃt ngåc nhiên, và t¿ hÕi tåi sao không nhanh gÃp Çôi mà tÌ sÓ låi thÃp hÖn phäi không? TÌ sÓ mau lË không th‹ tính nhÜ vÆy ÇÜ®c vì bÎ tùy thu¶c vào nhiŠu y‰u tÓ khác nhau, ngoài cÃu trúc cûa hŒ thÓng, tính chÃt công viŒc cÛng nhÜ cách phân chia công viŒc cho hai b¶ máy, së änh hܪng vào khä næng hoåt Ƕng cûa toàn hŒ thÓng. LÃy thí dø dùng hai b¶ máy vi tính Nj thi hành 10 l©i d¥n trên, chúng ta së phân chia công viŒc ra sao? Giä dø hai b¶ máy thay phiên nhau thi hành tØng l©i d¥n. L©i d¥n 1 và 2 không k‹ vì tính chÃt sºa soån (initialize). N‰u máy A thi hành l©i 3 và máy B thi hành l©i 4, thì máy B phäi ch© máy A thi hành xong l©i 3 m§i có k‰t quä Nj ghi vào c¶t C theo l©i 4. Vì tính chÃt liên hŒ cûa l©i 3 và 4 nên máy B bÎ tùy thu¶c vào A. ñó là chÜa k‹ làm th‰ nào máy B có th‹ nhÆn ÇÜ®c k‰t quä cûa máy A. MuÓn hai máy chåy song song cùng m¶t lúc, chúng ta có th‹ phân chia công viŒc cho máy A làm hàng lÈ và máy B làm hàng ch¤n. V§i lÓi phân viŒc này, thì hai máy không bÎ tùy thu¶c vào nhau và có th‹ thi hành công viŒc song song v§i nhau. NhÜng m¶t trª ngåi khác là hai máy không th‹ džc ho¥c vi‰t lên cùng m¶t t© giÃy cùng m¶t lúc ÇÜ®c, do Çó; m¶t máy phäi nhÜ©ng cho máy kia džc ho¥c vi‰t trܧc mình. M¶t cách h»u hiŒu khác là hai máy ÇÜ®c x‰p dây chuyŠn (pipe line), tính chÃt này së tåo ra s¿ xen kë là m¶t máy džc thì máy kia làm tính. NhÜ vÆy, hai máy së làm viŒc song song và liên tøc khi‰n tÌ sÓ làm viŒc së tæng lên gÀn gÃp Çôi. Bån thÃy Çó, chÌ vài vÃn NJ trong mÜ©i hàng ÇÖn giän Çã tåo ra nh»ng r¡c rÓi không ít, huÓng hÒ m¶t program phÙc tåp së gây r¡c rÓi và khó khæn không bi‰t chØng nào.

S¿ phân chia, thâu g†n (theo ngôn ng» ÇiŒn toán là "optimization") vào công viŒc giäi tính song song và dây chuyŠn không phäi là dÍ Ç‹ Çåt ÇÜ®c h»u hiŒu tÓi Ça. Khi chuy‹n dÎch qua máy ÇiŒn toán và dùng các hŒ thÓng luÆn lš toán h†c Nj phân chia công tác thÜ©ng không Çåt ÇÜ®c s¿ h»u hiŒu tÓi Ça. MuÓn Çåt ÇÜ®c s¿ h»u hiŒu tÓi Ça cho m‡i trÜ©ng h®p, bån phäi t¿ nghiên cÙu và thi‰t k‰ tØ sÖ bän. ñây là nh»ng khä næng Ç¥c biŒt cûa m‡i cá nhân trong ngành thi‰t k‰.

Tuy r¢ng kÏ thuÆt tân kÿ hiŒn Çåi Çã cao nhÜng không ÇÜ®c tr†ng døng vào nh»ng công viŒc Çòi hÕi s¿ bäo Çäm m¶t træm phÀn træm. Lš do kÏ thuÆt thi‰t k‰ cûa nh»ng b¶ máy ÇiŒn toán l§n và "software" cûa nh»ng b¶ máy này ÇÜ®c coi nhÜ bäo Çäm, và không có "bug" (ch» lóng cho l‡i lÀm, làm sai) do quá trình hoåt Ƕng lâu dài cûa nó. Trong khi Çó, b¶ máy PC lË và tiŒn l®i cho cá nhân nhÜng phÀn thi‰t k‰ có nh»ng l‡i lÀm, thí dø lúc chíp vi tính Pentium cûa Intel m§i ra có "bug" nhÜ thÌnh thoäng làm tính sai, b¶ tính toán phø (math co-processor) trong chíp vi tính 20260 cûa Motorola không ÇÜ®c dùng ljn vì bÎ "bug". ñó là chÜa k‹ nh»ng "bug" bí mÆt khác không ÇÜ®c ti‰t l¶ ra ho¥c chÜa ki‰m ra. Qua ljn "software" cÛng th‰, nh»ng "program" cÛng có th‹ có "bug" phÓi h®p v§i hŒ thÓng thi‰t k‰ "hardware" së bÎ hÜ lên hÜ xuÓng (crash). NhÜ vÆy, viŒc s° sách cûa hŒ thÓng ngân hàng chÜa th‹ lŒ thu¶c h£n vào nh»ng b¶ máy micro m§i này. NhÜng trong tÜÖng lai, s¿ hoàn chÌnh nh»ng hŒ thÓng micro së mang ÇÀy nh»ng hÙa hËn trong m†i hoåt Ƕng hàng ngày cûa chúng ta.

Bên cånh nhu cÀu cûa ki‰n trúc giäi tính song song và dây chuyŠn cho hŒ thÓng super micro computer, nó còn ÇÜ®c Ùng døng vào nh»ng hŒ thÓng tân kÿ nhÜ neuro-network, fuzzy logic, transputer... là nh»ng cÃu trúc cho ngành thông minh nhân tåo (artificial intelligent), các bån së t¿ hÕi liŒu hŒ thÓng "super micro" có th‹ Çåt ÇÜ®c s¿ thông minh nhÜ loài ngÜ©i?

| Issue 518 | VIET Magazine Home Page | Online Subscription |