Kinerja yang diharapkan dari multiplikasi port e-SATA?

10

Untuk beban kerja baca / tulis tertentu, saya mendapatkan 30 MiB / s dari array 4-disk menggunakan esata port multiplication. Ketika saya memindahkan array yang sama persis ke empat koneksi sata individu, saya mendapatkan 90 MiB / s untuk beban kerja yang sama. Apakah ini dampak kinerja yang diharapkan dari pengganda? Jika tidak, bagaimana saya mempersempit masalah antara perangkat lunak, pengontrol, atau enklosur?

Saya mendapatkan hasil yang sama persis bahkan setelah mencoba sejumlah besar variabel selama bertahun-tahun:

  • Banyak versi Linux (RHEL5, Fedora 9, 11, 13, 16) dan semua kernel yang diperlukan.
  • Dua jenis selungkup (keduanya model disk 4 100 $ low-end), total empat selungkup.
  • Dua jenis chipset pengontrol SATA (Marvell 88SE91xx dan Silicon Image 3132)
  • Empat pengendali SATA (Sekitar $ 30 - $ 60 kartu antarmuka pci-x1 dan satu PCI, semua switching berbasis FIS).
  • Tiga kecepatan SATA (1.5-, 3.0-, dan 6.0-Gbps)
  • Empat jenis hdds (Samsung Spinpoint F1 1TB, WD Caviar Black 2TB, Seagate Barracuda XT 3TB).
  • Tiga komputer (Athlon 3ghz + 1GB RAM ketika saya membuat array e-sata pertama, kemudian Core 2 Duo + 4GB, sekarang Core i5 750 + 8GB).

Ketika saya melakukan enclosure eSATA pertama saya bertahun-tahun yang lalu, saya berasumsi kecepatan lambat terkait dengan penggunaan kartu PCI (33mhz), driver SATA yang belum matang, atau mungkin drive SATA-1.5Gbps 5400 RPM. Tapi sekarang dengan controller x1 6Gbps, kernel 3.0, dan 6DSbps 7200rpm, masih belum ada yang berubah. Saya masih mendapatkan 30 MiB / s yang sama untuk beban kerja tertentu sampai saya memindahkannya ke koneksi SATA individual.

Apakah ini batasan mendasar dari semua implementasi multiplikasi port?

Daniel Browning
sumber
3
Wow, itu beberapa upaya pengujian :)
kubanczyk

Jawaban:

10

Iya. Performa buruk diharapkan.

Protokol ATA tidak pernah dimaksudkan untuk membawa data ke lebih dari satu drive (sebenarnya didasarkan pada Bus ISA, memperluas saluran komunikasi ke drive penyimpanan). Antarmuka IDE menipu batasan ini dengan membawa data untuk perangkat "Master" dan "Slave". Namun SATA tidak memiliki mekanisme yang setara, karena hanya ditujukan untuk satu perangkat per koneksi kabel.

eSATA Port Multipliers berfungsi sebagai target ATA yang dapat memilih beberapa media fisik (jadi hanya satu perangkat fisik yang dapat ditangani pada satu waktu, dan ada sedikit latensi dalam beralih ke perangkat yang berbeda). Anda dapat membandingkan ini dengan Perpustakaan Optik lama.

Ini sangat berbeda dari SAS yang dibangun dengan Ekspander dan inisiator / target routing bawaan (fungsi SAS 2.0+ agak seperti jaringan Ethernet yang diaktifkan). SAS juga dapat menyatukan banyak saluran ke dalam trunk yang memungkinkan akses simultan ke banyak perangkat di berbagai saluran trunk.

Pembaruan:
Rupanya ada pengontrol yang lebih baru yang mendukung FIS, yang memungkinkan beberapa drive menjadi "aktif" pada saat bersamaan. Ini harus memungkinkan kinerja jauh lebih tinggi daripada yang dijelaskan di atas. Ternyata saat ini hanya satu produsen yang membuat chip ini. Saya masih sangat merekomendasikan memulai dari SATA di lingkungan server. Jika Anda harus menggunakan drive SATA, pertimbangkan masih menggunakan pengontrol dan Ekspander SAS.

Chris S
sumber
Bentuk jamak media adalah media;)
Mark Henderson
kecuali merujuk pada medium spiritual atau item dari ukuran medium.
Chris S
Sentuh teman saya
Mark Henderson
3

Apakah Anda yakin Anda mencoba pengontrol dan pengganda port yang mendukung penggandaan port FIS (Frame Information Structure) ?

Hanya AFAIK pengontrol dan pengganda Silicon Image (SiI3726) yang mendukung hal ini, tetapi kinerjanya mirip dengan SAS dengan kecepatan yang sama (saturasi tautan 80-90%).

Hubert Kario
sumber
Saya tidak menyadari bahwa port multiplier itu sendiri harus mendukung FIS juga, tetapi kalau dipikir-pikir itu masuk akal. Mungkin port multiplier yang disematkan di semua kandang murah saya ($ 100 / masing-masing, mis. Mediasonic HF2-SU3S2) hanya mendukung pengalihan berbasis perintah. Apakah ada cara untuk memberi tahu secara programatis (mis. Keluaran dmesg)? Tidak disebutkan dalam manual atau situs web mereka kecuali untuk kutipan ini, "Ketika menghubungkan melalui antarmuka eSATA, perangkat keras komputer pelanggan harus memiliki Port Multiplier dengan pengalihan berbasis FIS untuk mengakses beberapa HDD secara bersamaan."
Daniel Browning
1
@DanielBrowning: ada bendera yang menunjukkan dukungan FIS untuk controller, tapi saya tidak berpikir ada satu untuk pengali. Mungkin ada masalah interoperabilitas juga (SiI menolak untuk bekerja dengan JMicron). Mendapatkan chipset yang digunakan dan membaca spesifikasi chipset akan menjadi satu-satunya cara untuk memastikan, saya pikir ...
Hubert Kario
Saya menarik kipas dari penutup HF2-SU3S2 dan memposting gambar di sini: thebrownings.name/images/2012/2012-01-esata - Sepertinya pengganda port JMicron JMB321, dan saya tidak melihat apa pun tentang FIS di situs web mereka: jmicron.com/Product_JMB321.htm - apa pendapat Anda?
Daniel Browning
Ini bisa menjadi masalah. Yang SiI harganya sama seperti seluruh kandang Anda: amazon.com/5-Port-Port-SATA-II-Multiplier-SiI3726/dp/B004G9SKEE Saya pasti akan mencoba ini sebelum ATAoE atau SCSI lengkap (baik SAS atau iSCSI )
Hubert Kario