วันอังคารที่ 13 กันยายน พ.ศ. 2554

แบนด์วิดท์ (อังกฤษ: bandwidth)

           แบนด์วิดท์ (อังกฤษ: bandwidth) เป็นคำที่ใช้วัดความเร็วในการส่งข้อมูลของอินเทอร์เน็ต ซึ่งโดยมากเรามักวัดความเร็วของการส่งข้อมูลเป็น bps(bit per second) , Mbp (bps*1000000) เช่น Bandwidth ของการใช้สายโทรศัพท์ในประเทศไทย เท่ากับ 14.4 Kbps,Bandwidth ของสายส่งข้อมูลของ KSC ที่ใช้ในการเชื่อมต่อกับอเมริกาเท่ากับ 2 Mbpsเป็นต้น
แต่ก่อนที่เราจะเข้าสู่บทความมารู้จักก่อนว่าอะไรคือ Bandwidth และ Latency ความหมาย Bandwidth คือ ความกว้างของช่องทางในการรับ-ส่งข้อมูล ส่วน Latency คือ เวลาที่ใช้ไปในการเข้าถึงข้อมูลของหน่วยความจำ เมื่อเรารู้ความหมายกันแล้วคราวนี้เรามารู้จักถึงหลักการต่างๆ ของ Bandwidth และ Latency
ในการพิจารณาการรับ-ส่งข้อมูลบนระบบบัสหลายคนมักจะนึกถึง Bus Bandwidth (Bandwidth ก็คือความกว้างของเส้นทางในการส่งข้อมูล ที่เราสามารถเปรียบเทียบได้กับเลนถนน ยิ่งมีเลนกว้างเท่าไรรถยนต์ซึ่งเปรียบได้กับข้อมูลก็สามารถวิ่งได้สะดวกมากขึ้นเท่านั้น) ที่ใช้ในการรับ-ส่งข้อมูล ซึ่งพิจารณาจากข้อมูลที่รับ-ส่งบนระบบบัส Bus Bandwidth ด้วยปริมาณจำนวนข้อมูลของเลข single number (0 หรือ 1) ที่ระบบบัสสามารถรองรับได้ แต่ปริมาณข้อมูลของเลข single number อาจแปรผันได้ตามเวลา เราจึงพิจารณาการรับ-ส่งข้อมูลผ่านทาง Bus Bandwidth ด้วย Peak bandwidth Bus หรือ ความกว้างสูงสุดในการรับ-ส่งข้อมูลของบัส ซึ่งวัดด้วยจำนวนข้อมูลสูงสุดที่ รับ-ส่งกันระหว่างซีพียูและแรมภายในหนึ่งคาบเวล
จากความเร็วสัญญาณนาฬิการะหว่างหน่วยความจำและซีพียูจากรูปที่ 1 ถ้าเรามาคำนวณหา Bandwidth ของบัสที่มีความเร็วสัญญาณนาฬิการะหว่างหน่วยความจำและซีพียู ที่สัญญาณนาฬิกา 100 เมกะเฮิรตซ์ โดยที่มีการรับ-ส่งข้อมูลจำนวน 8 ไบต์ในแต่ละหนึ่งรอบของสัญญาณนาฬิกา จะคำนวณออกมาได้ดังนี้
8 bytes * 100MHz = 800 MB/s                                                                                                                             
และถ้าหากเราคำนวณหา Bandwidth ของบัสที่มีความเร็วสัญญาณนาฬิการะหว่างหน่วยความจำและซีพียูที่ 133 เมกะเฮิรตซ์ โดยที่มีการรับ-ส่งข้อมูลจำนวน 8 ไบต์ในแต่ละหนึ่งรอบสัญญาณนาฬิกา จะคำนวณออกมาได้ดังนี้
8 bytes * 133MHz = 1064 MB/s
ซึ่งตัวเลข Bandwidth ที่ได้นี้เป็นพียงตัวเลขทางทฤษฎีที่บอกถึงปริมาณของข้อมูลที่เข้าสู่ซีพียูในแต่ละวินาที ในความเป็นจริง Bandwidth ของระบบจริงอาจมีค่าน้อยกว่าที่คำนวณเพียงเล็กน้อย

Bandwidth ในทางปฏิบัติ
ระบบบัสที่ผ่านมาจะมีลักษณะการส่งผ่านข้อมูลแบบทางเดียว จึงทำให้ไม่สามารถรับและส่งข้อมูลในเวลาเดียวกัน จึงต้องผลัดกันส่งและรับข้อมูลทำให้ความเร็วในการส่งผ่านข้อมูลช้า เปรียบเทียบระบบบัสได้กับการสื่อสารผ่านทางวิทยุรับส่งโดยที่อีกฝ่ายหนึ่งเป็นฝ่ายพูดอีกฝ่ายจะต้องเป็นผู้รับฟัง เนื่องจากต้องผลัดกันรับส่งข้อมูลดังนั้นเมื่อซีพียูต้องการร้องข้อมูลจากหน่วยความจำหลัก (RAM) ซีพียูจะต้องร้องขอผ่านทาง Bus Control จากนั้น Bus Control จะร้องขอข้อมูลมาที่หน่วยความจำหลัก (RAM) เมื่อค้นหาข้อมูลที่ซีพียูต้องการได้แล้ว หน่วยความจำหลักจะส่งต่อข้อมูลให้ Bus Control กลับไปให้ซีพียู โดยทั้งหมดนี้กระทำบนบัสเดียวกัน ถ้าพิจารณาเวลาที่สูญเสียไปจากการร้องขอข้อมูลจาก Bus Control และที่ต้องเสียเวลารอหน่วยความจำหลักค้นหาข้อมูลที่ซีพียูต้องการแล้วจึงส่งข้อมูลที่ต้องการกลับไปสู่ Bus Control และส่งกลับไปสู่ซีพียูได้ ซึ่งทั้งหมดนี้จะเป็น Delay Time ที่มีผลต่อค่า Read Latency โดยที่ Read Latency หมายถึง เวลาที่ใช้ระหว่างการร้องขอข้อมูลจากซีพียูผ่านทาง Frontside Bus (FSB)

ไม่มีความคิดเห็น:

แสดงความคิดเห็น