ในการเปรียบเทียบคุณต้องกำหนดขีด จำกัด ของคุณเสมอ เพราะถ้าคุณคาดหวังว่าจะได้รับ 100mbs จาก lan นั้นมากกว่าที่คุณหลอกตัวเอง!
ดูการออกแบบบล็อกนี้ของ RaspberryPI Model-B
ดังนั้นเราจึงสร้างความจริงที่สำคัญมากที่นี่ อีเธอร์เน็ตมีปัญหาคอขวดโดยคอนโทรลเลอร์ USBเนื่องจากรูปแบบบล็อกดิแกรมที่เราสร้างขึ้นจะเชื่อมต่อกับฮับ USB (ไม่มีข้อบ่งชี้ชัดเจนว่ามันใช้บัสอื่นหรือเพียงแค่ USB2?)
โอ้ดู - แผนภาพบล็อกอื่น
ตอนนี้ที่ให้ความกระจ่างกับสถานการณ์มากยิ่งขึ้น คอนโทรลเลอร์ 10/100 เชื่อมต่อกับฮับ USB - โชคไม่ดีที่ไม่มีข้อมูลระบุว่าฮับสื่อสารกับคอนโทรลเลอร์คอนโทรลเลอร์ lan ได้เร็วแค่ไหน - คาดหวังว่าจะมีการเจรจาความเร็ว usb และแลน สำหรับสภาพแวดล้อม usb ความเร็วสูงแบบผสม
การ์ด SD อยู่ที่ไหน
ปรากฎว่าการ์ด SD เชื่อมต่อโดยตรงกับBCM2835 (หน้า 65)และพวกเขาไปลงในรายละเอียดที่ดีว่าประสิทธิภาพได้รับผลกระทบจากการกำหนดค่าต่างๆ สิ่งหนึ่งที่สำคัญที่ควรสังเกตคือถ้าการ์ด SD มีนาฬิกาเฉพาะมันสามารถทำงานได้อย่างอิสระจากคอร์ CPU / GPU ที่ความเร็วสูงสุด (ไม่ว่าจะใช้การ์ดใดและมาตรฐานใด - คุณจะเห็นว่ารองรับมาตรฐานบางอย่าง)
ดังนั้นหมายความว่าอย่างไร
หมายความว่าหากคุณเปรียบเทียบกับการ์ด SD ที่เร็วกว่าและไดรฟ์ปากกาเสี้ยว (4gb / 8gb) คุณจะได้รับประสิทธิภาพที่แตกต่างกันมากที่สุด ดังนั้นตอนนี้จึงทำให้เกิดคำถามขึ้นว่า CPU / GPU จัดการกับอุปกรณ์ฝังตัวที่ยอดเยี่ยมนี้อย่างไร (usb / ชิป lan) และความเร็วที่สามารถสื่อสารได้
คุณจะเห็นว่าทฤษฎีสามารถไปได้ไกลแค่ไหนก่อนที่เราจะทำการเปรียบเทียบ? อีกประเด็นสำคัญที่นี่ - วิธีการควบคุมการไหลของข้อมูลของ CPU มันใช้ช่องสัญญาณนาฬิกาแยกตามที่แนะนำหรือไม่
ในโลกอุดมคติคุณจะคิดว่า LAN / USB นี้จะจัดการกับมัน แต่นั่นต้องใช้ MCU .. เราจะเห็น MCY ที่ใดก็ได้ในบล็อกไดอะแกรมนั้น .. ไม่!
ดังนั้น CPU ต้องขอ IO DATA ส่งพอร์ต USB จากนั้นไปที่พอร์ต LAN (ผ่าน HUB USB เดียวกัน) ใช่ .. เพื่อที่จะทำให้เกิดปัญหาความเร็วบางแห่ง
สิ่งที่ดีที่จะต้องทราบว่าเกิดอะไรขึ้นเมื่อคุณคัดลอกไปยังไดรฟ์ปากกา USB และจากการ์ด SD ทั้งหมดผ่าน LAN .. มันจะทำให้เกิดการรับส่งข้อมูล
เราจำเป็นต้องสร้างมาตรฐานด้านต่างๆ
ในการสร้างสิ่งที่เราพยายามเปรียบเทียบเราสามารถถามคำถามโลกแห่งความจริง
- USB ภายในจัดการข้อมูลจาก SD เร็วแค่ไหน?
- CPU ใช้ในการอ่าน / เขียน SD ไปยัง LAN เท่าไหร่?
- CPU ใช้ในการอ่าน / เขียนไปยังไดรฟ์ปากกา USB มีเท่าใด
- การคัดลอกข้อมูลใด ๆ ส่งผลโดยตรงต่อการใช้งาน CPU หรือไม่
- ชิป USB / LAN ในตัวจัดการกับข้อมูลการอ่านจาก 2 แหล่งข้อมูลกลับเข้าสู่พอร์ต LAN ได้ดีเพียงใดและส่งผลต่อ CPU ตามสัดส่วนอย่างไร
- ไม่จำเป็นต้องทดสอบว่า LAN จะได้รับเต็ม 10mb / s หรือไม่เนื่องจากมีปัญหาคอขวดโดยสถานะที่เป็นฮับ USB
ตอนนี้คุณรู้ว่าคุณกำลังต่อสู้เพื่ออะไรฉันขอท้าให้คุณตอบด้วยตนเอง
คุณอาจพบว่านี่เป็นจุดเริ่มต้นที่ดีมาก
อ้างอิง
แต่ส่วนใหญ่แล้ว
ความรู้ทางเทคนิคของฉันเองและการประเมินผลฉันได้ทำขึ้นอยู่กับประสบการณ์ที่ฝังตัวของฉันเอง OP ถามคำถามที่ดีมาก แต่ขาดความเข้าใจว่าไม่มีความเข้าใจในเชิงทฤษฎีของระบบคุณจะต้องพยายามประเมิน / แก้ปัญหาในทางปฏิบัติ
ผล
(4) คำตอบนี้แสดงการทดสอบการละเมิดลิขสิทธิ์ของโลก และพิสูจน์ได้ว่าการทำธุรกรรมข้อมูลที่รุนแรงมีอิทธิพลโดยตรงต่อ CPU (ไม่แน่ใจว่าเป็นการ์ด SD หรือกระบวนการเปลี่ยนข้อมูลภายในชิป BCM ไปเป็นชิป USB / LAN)
(6)ได้รับการพิสูจน์แล้วว่าคอขวดเท่านั้นจะเป็นแหล่งที่มา (เช่นการ์ด SD ที่ช้า) ฮับ USB สามารถสูบข้อมูลได้ 90% + แต่คำตอบสำหรับคำถามที่ 4 และ 5 จะมีผลโดยตรงต่อประสิทธิภาพนี้
ดังนั้นการทำวิจัยและสนับสนุนผู้ใช้รายอื่นเราจึงเริ่มสร้างและรับผลลัพธ์เบื้องต้น
นี่เป็นแผนภูมิที่ดีที่จะช่วยให้เห็นภาพสิ่งที่เรากำลังติดต่อด้วย
sudo hdparm -t /dev/sdx
เป็นเครื่องมือที่มีประโยชน์สำหรับการเปรียบเทียบ