1 คะแนน โดย GN⁺ 2023-12-26 | 1 ความคิดเห็น | แชร์ทาง WhatsApp
  • เปรียบเทียบว่า Raspberry Pi, อุปกรณ์ Android และ PC แซงหน้า Cray 1 ซึ่งเป็นซูเปอร์คอมพิวเตอร์ในปี 1978 ไปมากแค่ไหนในเบนช์มาร์ก Livermore Loops, Linpack และ Whetstone
  • ค่าฐานคือประสิทธิภาพฮาร์ดแวร์ของ Cray 1 ที่ 80MHz และสูงสุด 160MFLOPS ส่วนการเปรียบเทียบจริงใช้ค่า Livermore Loops ค่าเฉลี่ยเรขาคณิต 11.9MFLOPS, Linpack 27MFLOPS และ Whetstone ที่ประเมินไว้ 6MFLOPS
  • Raspberry Pi 1 ปี 2012 เร็วกว่า Cray 1 4.6 เท่าตามค่าเฉลี่ยเรขาคณิตของ Livermore Loops และ Raspberry Pi 400 ปี 2020 เพิ่มขึ้นเป็น 78.8 เท่า, 49.5 เท่า และ 95.5 เท่าในเบนช์มาร์กทั้งสามตามลำดับ
  • CPU Kryo 570 ในโทรศัพท์ Android ระดับกลางปี 2021 ทำได้ 123 เท่า, 74 เท่า และ 151 เท่าเมื่อเทียบแบบคอร์เดียว ส่วนโน้ตบุ๊ก Core i5 1135G7 ทำได้ 359 เท่า, 337 เท่า และ 226 เท่าเมื่อคอมไพล์ด้วย AVX-512
  • หากใช้ SIMD และมัลติเธรด ช่องว่างจะยิ่งกว้างขึ้น แต่การคำนวณแบบ fused ของ AVX-512 อาจทำให้ผลลัพธ์เชิงตัวเลขในบางเบนช์มาร์กต่างจากค่าที่คาดตามเดิม

เบนช์มาร์กและ Cray 1 ที่ใช้เป็นเกณฑ์เปรียบเทียบ

  • แกนหลักของการเปรียบเทียบคือ Lawrence Livermore Laboratory program kernels หรือ Livermore Loops ซึ่งใช้ตรวจสอบประสิทธิภาพของ Cray 1 รุ่นแรก ๆ
    • ผลลัพธ์ใช้เวอร์ชันที่ถูกแปลงเป็นโค้ด C ในทศวรรษ 1990
    • Livermore Loops ให้ค่า MFLOPS ของแต่ละลูป รวมถึงค่าต่ำสุด ค่าสูงสุด และค่าเฉลี่ยหลายแบบ โดยค่าเฉลี่ยอย่างเป็นทางการคือค่าเฉลี่ยเรขาคณิต
  • การเปรียบเทียบเสริมใช้ Linpack 100 และ Whetstone
    • Linpack อิงจาก linpack-pc.c ซึ่งถูกแปลงสำหรับ PC และรวมไว้ใน Netlib
    • Whetstone ถูกสานต่อด้านการออกแบบหลังจากผู้เขียนต้นฉบับ Harold Curnow และมีการสร้างเวอร์ชันดัดแปลงที่ขยายความสามารถ โดยเวอร์ชันที่ vectorize 100% มีเป้าหมายเริ่มต้นเป็นระบบ Cray 1 เครื่องแรกที่นำเข้าในสหราชอาณาจักร
  • ค่าหลักของ Cray 1 มีดังนี้
    • ประสิทธิภาพฮาร์ดแวร์สูงสุดที่เป็นไปได้ของ Cray 1 80MHz เป็นที่รู้จักกันว่า 160MFLOPS จาก linked multiply and add ที่ให้ผลลัพธ์สองค่าต่อหนึ่งคล็อก
    • ผลลัพธ์ Livermore Loops คือสูงสุด 82.1MFLOPS, ค่าเฉลี่ยเรขาคณิต 11.9MFLOPS และต่ำสุด 1.2MFLOPS
    • Linpack อยู่ที่ 27MFLOPS และ Whetstone ประเมินไว้ที่ 6MFLOPS จากผลลัพธ์ของ Cray XMP

จุดที่ Raspberry Pi แซง Cray 1

  • ในปี 2013 มีการรันเบนช์มาร์กสำหรับ PC บน Linux ซึ่งโดยสาระสำคัญเป็นโปรแกรมเดียวกัน บน Raspberry Pi รุ่นแรก
  • ข้อความเปรียบเทียบในเวลานั้นระบุว่า Cray 1 ปี 1978 มีราคา 7 ล้านดอลลาร์ หนัก 10,500 ปอนด์ ต้องใช้แหล่งจ่ายไฟ 115kW ขณะที่ Raspberry Pi ราคาประมาณ 70 ดอลลาร์ หนักไม่กี่ออนซ์ ใช้แหล่งจ่ายไฟ 5W และเร็วกว่า Cray 1 มากกว่า 4.5 เท่า
    • การเปรียบเทียบนี้อิงค่าเฉลี่ยเรขาคณิตอย่างเป็นทางการของ Livermore Loops
  • ค่าที่วัดได้หลักสามรายการของ Pi 1 คือ Livermore Loops 55MFLOPS, Linpack 42MFLOPS และ Whetstone 94MFLOPS
    • MHz ของ CPU เมื่อเทียบกับ Cray 1 คือ 8.8 เท่า
    • MFLOPS เมื่อเทียบกับ Cray 1 คือ 4.6 เท่า, 1.6 เท่า และ 15.7 เท่าตามลำดับ
  • Raspberry Pi 400 ปี 2020 ที่ 1800MHz ทำได้ Livermore Loops 819MFLOPS, Linpack 1147MFLOPS และ Whetstone 498MFLOPS ในโหมด 32 บิต
  • ผลลัพธ์การคอมไพล์แบบ SIMD 64 บิตของ Pi 400 เมื่อเทียบกับ Cray 1 คือ 78.8 เท่า, 49.5 เท่า และ 95.5 เท่า

ผลลัพธ์ของ CPU ARM บน Android

  • ในปี 2012 เบนช์มาร์กถูกแปลงให้รันบน Android เป็นโค้ด ARM แบบ native และจำเป็นต้องมีโปรแกรมส่วนหน้าเป็น Java
  • แท็บเล็ต Android รุ่นแรก ๆ บางครั้งขาดทั้งฮาร์ดแวร์หรือซอฟต์แวร์ที่รองรับการคำนวณทศนิยมแบบรวดเร็ว
  • ผลลัพธ์ของ ARM Cortex-A9 800MHz ในปี 2012 คือ Livermore Loops 20MFLOPS, Linpack 11MFLOPS และ Whetstone 22MFLOPS
    • CPU MHz สูงกว่า Cray 1 10 เท่า แต่สัดส่วน MFLOPS มีเพียง 1.7 เท่า, 0.4 เท่า และ 3.7 เท่าตามลำดับ
  • ต่อมา V7-A9 800MHz ปรับปรุงขึ้นเป็น 115MFLOPS, 101MFLOPS และ 155MFLOPS
    • เทียบกับ Cray 1 คือ 9.7 เท่า, 3.7 เท่า และ 25.8 เท่า
  • CPU Kryo 570 ในโทรศัพท์ระดับกลางปี 2021 ที่ 2000MHz ทำได้ Livermore Loops 1468MFLOPS, Linpack 1986MFLOPS และ Whetstone 905MFLOPS
    • เทียบกับ Cray 1 คือ 123 เท่า, 74 เท่า และ 151 เท่า
    • CPU MHz สูงกว่า Cray 1 25 เท่า

ประสิทธิภาพคอร์เดียวของ Windows และ Linux PC

  • ตั้งแต่ทศวรรษ 1990 มีการพัฒนาเบนช์มาร์กสำหรับ CPU Intel บน DOS, OS/2, Windows และ Linux
  • PC เครื่องแรกที่ทำคะแนน Livermore Loops เฉลี่ยเท่ากับ Cray 1 ได้คือ Pentium 100MHz ในปี 1994
    • Livermore Loops 12MFLOPS, Linpack 12MFLOPS, Whetstone 16MFLOPS
    • เมื่อเทียบกับ Cray 1 ค่า CPU MHz และ MFLOPS ทั้งสามรายการอยู่ที่ประมาณ 1.3 เท่า, 1.0 เท่า, 0.44 เท่า และ 2.6 เท่า
  • Pentium Pro 200MHz ปี 1995 ทำได้ Livermore Loops 34MFLOPS, Linpack 49MFLOPS และ Whetstone 41MFLOPS
    • เทียบกับ Cray 1 คือ 2.9 เท่า, 1.8 เท่า และ 6.8 เท่า
  • Core 2 1820MHz แบบคอร์เดียวในปี 2007 ทำได้ 413MFLOPS, 998MFLOPS และ 374MFLOPS
    • เทียบกับ Cray 1 คือ 35 เท่า, 37 เท่า และ 62 เท่า
  • โน้ตบุ๊ก Core i5 1135G7 ปี 2021 ที่ 4150MHz ทำได้ 1387MFLOPS, 3541MFLOPS และ 802MFLOPS
    • เทียบกับ Cray 1 คือ 117 เท่า, 131 เท่า และ 134 เท่า

ผลของการคอมไพล์แบบ SIMD

  • มีการเปรียบเทียบผลลัพธ์ที่คอมไพล์ด้วยตัวเลือก SIMD อย่าง SSE, AVX และ AVX-512 ด้วย
    • SSE ใช้เวกเตอร์รีจิสเตอร์ 128 บิต, AVX ใช้ 256 บิต และ AVX-512 ใช้ 512 บิต
    • วิธีนี้ประมวลผลตัวเลขพร้อมกันได้ 4, 8, 16 ค่าใน single precision และ 2, 4, 8 ค่าใน double precision ตามลำดับ
  • หากใช้ FMA ประสิทธิภาพสูงสุดที่คาดหวังอาจเพิ่มเป็นสองเท่า แต่ความแม่นยำของผลการคำนวณอาจต่างออกไปเล็กน้อย
    • เบนช์มาร์กรายงานความแตกต่างเหล่านี้เป็นข้อผิดพลาด
  • ในผลลัพธ์ SIMD บน Windows Core i5 ทำได้ Livermore Loops 238 เท่า, Linpack 190 เท่า และ Whetstone 182 เท่าเมื่อเทียบกับ Cray 1
  • ผลลัพธ์ที่คอมไพล์บน Linux ด้วย gcc 9.3.0 และสภาพแวดล้อม Ubuntu สูงกว่า
    • ผลลัพธ์ AVX คือ 300 เท่า, 259 เท่า และ 179 เท่าเมื่อเทียบกับ Cray 1
    • ผลลัพธ์ AVX-512 คือ 359 เท่า, 337 เท่า และ 226 เท่า
  • ไฟล์ปฏิบัติการ AVX-512 จะรายงานว่าโปรแกรมล้มเหลวหากรันบน CPU รุ่นเก่าที่ไม่มีตัวเลือกดังกล่าว

Vector Whetstone และการเปรียบเทียบกับซูเปอร์คอมพิวเตอร์ในอดีต

  • Vector Whetstone ทำงานฟังก์ชันเดียวกับ Whetstone แบบสเกลาร์ แต่ดำเนินการกับตำแหน่งหน่วยความจำต่อเนื่องที่กำหนดด้วยพารามิเตอร์ความยาวเวกเตอร์
  • Cray 1 ทำประสิทธิภาพสูงสุดได้เมื่อความยาวเวกเตอร์ตั้งแต่ 64 word ขึ้นไป และแสดงรูปแบบคล้ายฟันเลื่อย
  • ตารางรวมผลลัพธ์ Whetstone แบบสเกลาร์และเวกเตอร์ของซูเปอร์คอมพิวเตอร์ 13 เครื่องตั้งแต่ปี 1978 ถึง 1991
    • Cray Y-MP ถูกระบุว่ามีคล็อกและ MFLOPS แบบสเกลาร์ประมาณ 2 เท่าของ Cray 1 และ MFLOPS แบบเวกเตอร์ 4 เท่า
    • Cray Y-MP เป็นระบบที่มีเวกเตอร์ยูนิตสองชุด
  • ผลลัพธ์ Core i5 AVX-512 ใน Vector Whetstone คือค่าเฉลี่ย single precision 28,303MFLOPS และค่าเฉลี่ย double precision 20,346MFLOPS
    • เทียบกับ Cray 1 คือ 602 เท่า และ 433 เท่า
    • ความเร็ว single precision สูงสุดคือ 75.1GFLOPS
  • Vector Whetstone ของ Raspberry Pi 400 คือค่าเฉลี่ย single precision 2131MFLOPS และค่าเฉลี่ย double precision 1184MFLOPS
    • เทียบกับ Cray 1 คือ 45 เท่า และ 25 เท่า

มัลติเธรด Whetstone และ MP MFLOPS

  • MP Whetstone รันโค้ด Whetstone มาตรฐานหลายชุดภายในโปรแกรมเดียวด้วย 1, 2, 4 และ 8 เธรด
    • ใช้เพื่อแสดง throughput แบบมัลติคอร์เมื่อเทียบกับคอร์ CPU เดียว
  • Performance Monitor แสดงว่าโน้ตบุ๊ก Core i5 ทำงานที่ประมาณ 4150MHz ใน 1 และ 2 เธรด และประมาณ 3800MHz ใน 4 และ 8 เธรด
  • ผลลัพธ์ MP Whetstone 8 เธรดมีดังนี้
    • โน้ตบุ๊ก Core i5 AVX-512 เทียบกับ Cray 1 คือ 1521 เท่า
    • โทรศัพท์ Android Kryo 570 คือ 757 เท่า
    • Raspberry Pi 400 คือ 400 เท่า
  • MP MFLOPS เป็นเบนช์มาร์กที่สร้างขึ้นให้แสดงประสิทธิภาพเกือบสูงสุด โดยรันชุดการคูณและบวกเลขทศนิยม
    • รัน 2, 8 และ 32 floating point operations per data word
    • ค่าเริ่มต้นคือ 8 เธรด แต่สามารถระบุพารามิเตอร์ขณะรันได้สูงสุด 64 เธรด
  • ผลลัพธ์สูงสุดของ MP MFLOPS บนโน้ตบุ๊ก Core i5 มีดังนี้
    • single precision 325,915MFLOPS เทียบกับ Cray 1 คือ 2671 เท่า
    • double precision 160,641MFLOPS เทียบกับ Cray 1 คือ 1317 เท่า
    • โทรศัพท์ Android single precision 35,686MFLOPS เทียบกับ Cray 1 คือ 293 เท่า
    • Raspberry Pi 400 single precision 30,150MFLOPS เทียบกับ Cray 1 คือ 247 เท่า

ความถูกต้องของตัวเลขและผลลัพธ์ที่เร็วกว่าคาด

  • ใน Livermore Loops ที่ใช้ AVX-512 มีบางกรณีที่ความแม่นยำของ checksum ลดจาก 15~16 หลักเดิมเหลือ 12~13 หลัก
    • การคำนวณแบบ fused ดูเหมือนจะปัดเศษเพียงครั้งเดียว แทนที่จะปัดเศษแยกในแต่ละคำสั่ง
  • ใน Linpack AVX-512 และ Whetstone SSE ก็มีการบันทึก non-standard sumcheck หรือความแตกต่างของผลลัพธ์บนโน้ตบุ๊ก Core i5
  • ผลลัพธ์ SSE และ AVX บางส่วนสูงกว่าค่า MFLOPS/MHz สูงสุดที่คาดตามเอกสาร
    • ตัวอย่าง Core i5 SSE ใน Livermore Loops คือ 3.56MFLOPS/MHz ซึ่งเป็นระดับที่ถือว่าเป็นไปไม่ได้หากไม่มี FMA
    • ตัวอย่าง AVX คือ 4.86MFLOPS/MHz สูงกว่าค่าสูงสุดที่คาด 21.5%
  • จากการตรวจสอบโค้ดที่ถอดแยกแล้ว ตัวอย่าง SSE และ AVX ดังกล่าวไม่มีคำสั่งรูปแบบ fused multiply and add
  • โค้ดที่ถอดแยกของ AVX-512 MP MFLOPS มีคำสั่ง fused multiply/add/subtract
    • มีคำสั่งเวกเตอร์เชิงคณิตศาสตร์ 21 คำสั่ง และจำนวนคำสั่งขั้นต่ำในรูปแบบ FMA เต็มคือ 16 คำสั่ง จึงคำนวณความเร็วที่ทำได้เป็น 76.19% ของ FMA เต็มรูปแบบ
    • เมื่อปรับเช่นนี้ ความเร็วสูงสุดโดยประมาณของ Cray 1 ขณะรันฟังก์ชันดังกล่าวลดจาก 160MFLOPS เหลือ 122MFLOPS

ช่องว่างที่เปลี่ยนไปตามประเภทงาน

  • อัตราเทียบกับ Cray 1 ของ Core i5 AVX-512, โทรศัพท์ Android และ Raspberry Pi 400 แตกต่างกันมากตามประเภทของงาน
  • ในการเปรียบเทียบแบบคอร์เดียว Core i5 AVX-512 ทำได้ค่าเฉลี่ย Livermore Loops 359 เท่า, Linpack 337 เท่า และ Whetstone 226 เท่า
  • โทรศัพท์ Android ทำได้ค่าเฉลี่ย Livermore Loops 123 เท่า, Linpack 74 เท่า และ Whetstone 151 เท่า
  • Raspberry Pi 400 อยู่ที่ประมาณค่าเฉลี่ย Livermore Loops 79 เท่า, Linpack 50 เท่า และ Whetstone 96 เท่า
  • สำหรับงานที่ใช้มัลติโปรแกรม มัลติเธรด และ SIMD ความแตกต่างจะมากกว่าการเปรียบเทียบคอร์เดียวแบบง่าย ๆ อย่างมาก และประสิทธิภาพมัลติคอร์คาดเดาได้ยากขึ้นเพราะจำนวนคอร์ของ CPU รุ่นใหม่ การลดคล็อก และโครงสร้าง big/LITTLE

1 ความคิดเห็น

 
GN⁺ 2023-12-26
ความคิดเห็นจาก Hacker News
  • พอเห็นการเปรียบเทียบแบบนี้ ก่อนจะนึกถึง benchmark ผมสงสัยก่อนเลยว่า งานคำนวณจริงที่ “ยิ่งใหญ่” ที่สุดที่น่าจะเคยรันบน Cray-1 ในยุคนั้นคืออะไร และเราจะจำลองมันบนอุปกรณ์อย่าง Raspberry Pi ในวันนี้ได้อย่างไร
    อาจเป็นแบบจำลองสภาพอากาศ·ภูมิอากาศ หรืออาจเป็นรังสี-อุทกพลศาสตร์ก็ได้ ถ้าเทียบกับซอฟต์แวร์วิเคราะห์ไฟไนต์เอลิเมนต์สมัยใหม่ ความแม่นยำน่าจะแทบจะแน่นอนว่าต่ำมาก แต่แค่ลองทำก็น่าสนุกแล้ว

    • มีความเป็นไปได้สูงว่าเป็น การจำลองอาวุธนิวเคลียร์
      เครื่องแรกถูกส่งไปที่ Los Alamos
      https://www.theatlantic.com/technology/archive/2014/01/these...
    • หนึ่งในลูกค้าช่วงแรกคือ European Centre for Medium-Range Weather Forecasts ดังนั้นก็น่าจะใช้กับการพยากรณ์อากาศระยะกลาง
    • ไม่ใช่ Cray-1 แต่ไม่กี่ปีต่อมา กองทัพเรือเคยใช้ Cray 90 ทำการคำนวณพลศาสตร์ของไหลเชิงคำนวณเพื่อจำลองการไหลรอบตัวเรือ และโค้ดเขียนด้วย Fortran
      ถ้าได้เข้าถึงโค้ดที่เขียนตอนนั้นอีกครั้งก็คงดี งานที่เคยใช้เวลาหลายนาทีหรือหลายชั่วโมงบน Cray ตอนนี้อาจรันบน Raspberry Pi ได้ภายในไม่กี่วินาที
    • ลองรันตั้งแต่ Spec ‘06 ได้ ในนั้นมี microkernel ของ workload “ยิ่งใหญ่” แบบนั้นอยู่
    • ราวปี 1979 ผมเคยไปเยี่ยมชมศูนย์ NCAR ที่ Boulder และเคยนั่งบนที่นั่งของ Cray-1 ที่นั่น
      เพราะงั้นใช่ มันถูกใช้กับการคำนวณด้านสภาพอากาศและภูมิอากาศ
  • ผมรู้จักคนที่ทำงานในห้องปฏิบัติการแห่งชาติที่มี ซูเปอร์คอมพิวเตอร์ Cray-1 เป็นของตัวเอง มันวางอยู่ในห้องเครื่องที่มีหน้าต่างสังเกตการณ์บานใหญ่ให้ผู้มาเยี่ยมชมดูได้
    ก่อนทัวร์กลุ่มใหญ่ระดับ VIP ที่เขารู้จักจะมาถึง เขาไปซ่อนอยู่ใน Cray-1 แล้วรอ พอคณะทัวร์มาถึง เขาก็เดินออกมาจาก Cray-1 พร้อมรูดซิปกางเกงยีนส์ขึ้น ทำหน้าเขินๆ โล่งอก แล้วแกล้งตกใจเมื่อเห็นคณะทัวร์จ้องเขาอึ้งๆ ผ่านกระจก ก่อนจะรีบหายตัวไป

  • นอกจาก benchmark แล้ว ผมสงสัยว่ามีซอฟต์แวร์อะไรที่ทำให้รู้สึกได้ว่ามันเร็วขนาดนั้นไหม
    ซอฟต์แวร์อย่าง GUI, IDE, compiler, office ที่ใช้กันตอนนี้ให้ความรู้สึกเหมือนเป็นเวอร์ชันที่พัฒนาต่อจากของที่เคยรันบน 386 ซอฟต์แวร์ที่ Met ใช้ตอนนี้คงออกแบบมาโดยตั้งสมมติฐานว่าคอมพิวเตอร์เร็วขึ้นหลายล้านเท่า แต่ซอฟต์แวร์ที่ตอนนั้นจำเป็นต้องใช้ Cray น่าจะยังมีอยู่ที่ไหนสักแห่ง

    • ไม่มีหรอก Cray-1 รันงานแบบ batch processing และส่วนใหญ่เป็นการจำลองทางวิทยาศาสตร์ที่ใช้เวลาหลายชั่วโมงหรือหลายวัน
      มันมี terminal interface และไม่ได้ถูกใช้สำหรับแอปพลิเคชันแบบโต้ตอบเรียลไทม์
    • โค้ดฟิสิกส์ Fortran เก่าๆ ดูมีความเป็นไปได้มากที่สุด
      เช่น คำนวณ scattering cross section จาก matrix element หรือ งานที่มี linear algebra จำนวนมากซึ่งทำ vectorization ได้
    • งานจำนวนมากที่ตอนนั้นใช้เวลาหลายชั่วโมง ตอนนี้อาจใช้ไม่ถึง 1 วินาที
      ถ้านึกถึงวิศวกรรมเครื่องกล ตอนนั้นอาจเคยจำลองว่ารถยนต์เสียรูปอย่างไรเมื่อชนกัน ตอนนี้เราทำ simulation คล้ายๆ กันแบบเรียลไทม์ในวิดีโอเกมเพื่อความบันเทิงได้ แม้เท่าที่รู้ เกมแทบไม่ทำแบบจำลองที่ถูกต้องทางฟิสิกส์จริงๆ เพราะไม่จำเป็น แต่ก็ทำได้
      การเรนเดอร์ก็เหมือนกัน ตอนนั้นแต่ละเฟรมของ Toy Story ใช้เวลาเรนเดอร์เป็นชั่วโมง แต่ตอนนี้เราสร้างกราฟิกที่ถกเถียงได้ว่าดีกว่าแบบเรียลไทม์ได้แล้ว
  • กำลังรอดูวิดีโอต่อของ Jeff Geerling ที่เอา Raspberry Pi ไปใส่ในเคส Cray-1

    • ถ้ามีเคสพีซีทรง Cray-1 ออกมาก็คงดีมาก
      แบบเล็กลงสำหรับ Raspberry Pi ก็น่าจะเท่
    • หรือไม่ก็เชื่อมต่อกันเป็นเครือข่ายแล้วใส่ให้ได้มากที่สุดเท่าที่ทำได้
  • เทียบกับ RISC-V ที่รองรับ Vector 1.0 น่าจะสมเหตุสมผลกว่า
    เพราะ Cray-1 เป็นเครื่องแบบเวกเตอร์

    • มี RISC-V CPU ที่ใส่ การรองรับเวกเตอร์ ในฮาร์ดแวร์แล้วออกมาเป็นชิปจริงบ้างหรือยัง?
    • หรือจะเทียบกับ GPU หรือ TPU ก็ได้
  • Raspberry Pi ไม่ได้มีที่ให้นั่งอย่างกว้างขวางเหมือน Cray-1

    • มีคนทำ คลัสเตอร์ Pi Zero ธีม Cray ไว้ ถ้าเป็นหนูอาจจะเข้าเงื่อนไขก็ได้: https://www.clustered-pi.com/blog/clustered-pi-zero.html
    • ด้วยราคา Cray แม้ไม่คิดเงินเฟ้อ ก็ซื้อเก้าอี้จำนวนพอใช้ได้เลย
      ยิ่งถ้าคิดถึงค่าไฟที่ประหยัดได้ด้วยก็ยิ่งใช่
    • ใช่ เคส Pi น่าผิดหวัง
      แทบไม่มีตัวไหนระบายความร้อนได้ดีจริงๆ flirc ดี ส่วนพวกที่มีพัดลมก็น่ารำคาญเฉยๆ
      ถ้ามีเคส Pi ที่มี breadboard ในตัวก็คงดี
      หรือเคสที่นั่งสบายก็ได้
    • ในแง่ดีไซน์เรียบๆ ก็ไม่มี ความเท่ เท่า Cray-1 ด้วย
  • ในปี 2013 ผมซื้อ Intel x86 CPU รุ่นล่าสุดและแพงที่สุดมาประกอบพีซีใหม่
    ภรรยาเดินเข้ามาในห้องทำงาน เห็นกราฟบนหน้าจอแล้วพูดว่า “ดูไม่เหมือนกำลังทำงานนะ แต่ก็ไม่รู้ว่ากำลังทำอะไรอยู่?”
    ผมตอบว่า “กำลังคำนวณว่าพีซีของผมน่าจะเคยเป็นคอมพิวเตอร์ที่เร็วที่สุดในโลกเมื่อไหร่ ดูแล้วถ้าเป็นปี 1992 มันน่าจะคำนวณได้ดีกว่าซูเปอร์คอมพิวเตอร์รุ่นล่าสุดของกระทรวงกลาโหมราคา 90 ล้านดอลลาร์ที่กินพื้นที่ทั้งห้องอีกนะ เชื่อไหม?”
    เธอตอบกลับว่า “ดีนะ แล้วมันช่วยให้เราจ่ายบิลบัตรเครดิตยังไงล่ะ?”
    เอาเรื่องขำๆ ไว้อีกเรื่อง ข้อมูลสำหรับการคำนวณแบบนี้มีอยู่พอสมควร เช่นที่นี่: https://en.wikipedia.org/wiki/TOP500
    ถ้า extrapolate ย้อนไปในอดีตหรือหา data เก่าๆ การคำนวณของผมให้ข้อสรุปสุดเพี้ยนประมาณว่า ถ้ายกพีซีเครื่องนี้กลับไปปี 1981 มันจะเร็วกว่าคอมพิวเตอร์ทุกเครื่องบนโลกรวมกัน

    • หนึ่งในเครื่องที่ผมชอบใน Top500 คือ SystemX
      https://www.top500.org/system/173736/
      ตอนเปิดใช้ในปี 2004 ระบบ array ที่ประกอบด้วย Apple PowerPC 970 จำนวน 1100 เครื่องนี้เป็นคอมพิวเตอร์ที่ทรงพลังอันดับ 7 ในรายการ
      ประสิทธิภาพ Linpack คือ 12,250.00 GFlop/s
    • อีกอย่างที่สนุกคือดูว่า โทรศัพท์มือถือ ของผมจะติดอันดับท้ายๆ ของรายการ Top500 ได้ล่าสุดในปีไหน
  • Cray-1 มี โซฟา ที่ดีกว่ามาก

    • ที่นั่งนุ่มๆ ของ Cray-1 คลุม power supply อยู่
      ผมเศร้าเลยที่เห็น Cray-1 ใน Computer Museum ที่ Mountain View ถูกใช้เป็นที่เก็บของจัดเลี้ยงสำหรับงานอีเวนต์ในล็อบบี้
    • เราควรนำที่นั่งคอมพิวเตอร์กลับมา
  • สรุปคือ เมื่อ 10 ปีก่อน Raspberry Pi กับโทรศัพท์ Android เร็วกว่าอยู่หลายเท่า และตอนนี้เร็วขึ้นประมาณ 100 เท่า
    ถ้าคิดว่ามันใส่กระเป๋าได้ ก็น่าประทับใจมาก

    • ดีแล้วที่มีระบบปฏิบัติการสมัยใหม่มาช่วยทำให้มันช้าลง /s
  • เมื่อไม่กี่ปีก่อน ผมเคยเทียบ SPARCstation 20 Model 60 กับ Raspbian บน Raspberry Pi เครื่องนี้เป็นระบบที่ BYTE UNIX Benchmark ใช้เป็น baseline: https://news.ycombinator.com/item?id=10795324
    ตาม benchmark แล้ว Raspberry Pi รุ่นแรกมีประสิทธิภาพเป็น 6–7 เท่าของ SPARCstation 20