Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

EzisAA

macrumors regular
Original poster
Jan 26, 2017
110
66
Riga, Latvia
Hi, what you can say about CalDigit SOHO Dock card reader... does it work in full speed when you use both readers SD + micro SD or speed go down like a most off card readers?​
CalDigit_2021-Jul-22.jpg


Basically I planing move from UHS-I cards to UHS-II so i need fast dual card reader, CalDigit SOHO looks good, but what about real life speed for UHS-II SD and UHS-II micro SD cards use in same time?

From that what I found internet only Prograde Dual UHS-II card's reader work in full speed in same time with two UHS-II SD cards.
DualSlotSDReaderDS_2048x.jpg
 

joevt

Contributor
Jun 21, 2012
6,876
4,172
Hi, what you can say about CalDigit SOHO Dock card reader... does it work in full speed when you use both readers SD + micro SD or speed go down like a most off card readers?
I can say it uses a USB card reader having CalDigit for the vendor ID. Does CalDigit make USB card readers or did they change the ID of someone else's card reader?
The card reader is a 5 Gbps device connected to a 10 Gbps hub.

I don't know anything about SD cards. I don't know if you can use both slots at the same time.

wikipedia says UHS-II has two modes:
156 MB/s full-duplex
312 MB/s half-duplex

half-duplex uses an additional row of pins on the SD card (a total of 17 pins for full-size and 16 pins for micro-size cards). Does the extra row of pins means it has two half duplex connections? Doesn't that make it full duplex?
https://en.wikipedia.org/wiki/SD_card

The page at https://www.sdcard.org/developers/s...peed-default-speed-high-speed-uhs-sd-express/ says more about full and half duplex. I think it says one row of pins is one lane and the second row of pins is another lane? But I think it's saying that the second row is used for both lanes using LVDS signalling so the first row is for compatibility with UHS-I? This page talks about that:
https://www.memorycard.guru/-Article/UHS-II-Cameras

Anyway, 5Gbps USB can do ≈460 MB/s. If it's possible to use both ports at the same time, then it should have no problem with two full-duplex connections. One full-duplex and one half-duplex is at the limit of 5 Gbps USB. Two half-duplex could exceed the 5 Gbps USB max depending on how fast the SD cards are - you would be stuck with 230 MB/s for each card if they are used at the same time. USB 3.x uses different lines for send and receive, so it could be possible to read 312 MB/s and write 312 MB/s at the same time.
 

EzisAA

macrumors regular
Original poster
Jan 26, 2017
110
66
Riga, Latvia
I can say it uses a USB card reader having CalDigit for the vendor ID. Does CalDigit make USB card readers or did they change the ID of someone else's card reader?
The card reader is a 5 Gbps device connected to a 10 Gbps hub.

I don't know anything about SD cards. I don't know if you can use both slots at the same time.

wikipedia says UHS-II has two modes:
156 MB/s full-duplex
312 MB/s half-duplex

half-duplex uses an additional row of pins on the SD card (a total of 17 pins for full-size and 16 pins for micro-size cards). Does the extra row of pins means it has two half duplex connections? Doesn't that make it full duplex?
https://en.wikipedia.org/wiki/SD_card

The page at https://www.sdcard.org/developers/s...peed-default-speed-high-speed-uhs-sd-express/ says more about full and half duplex. I think it says one row of pins is one lane and the second row of pins is another lane? But I think it's saying that the second row is used for both lanes using LVDS signalling so the first row is for compatibility with UHS-I? This page talks about that:
https://www.memorycard.guru/-Article/UHS-II-Cameras

Anyway, 5Gbps USB can do ≈460 MB/s. If it's possible to use both ports at the same time, then it should have no problem with two full-duplex connections. One full-duplex and one half-duplex is at the limit of 5 Gbps USB. Two half-duplex could exceed the 5 Gbps USB max depending on how fast the SD cards are - you would be stuck with 230 MB/s for each card if they are used at the same time. USB 3.x uses different lines for send and receive, so it could be possible to read 312 MB/s and write 312 MB/s at the same time.
What are you trying to say? Lots of words and no real life experiences.
 

joevt

Contributor
Jun 21, 2012
6,876
4,172
What are you trying to say? Lots of words and no real life experiences.
You said "only Prograde Dual UHS-II card's reader work in full speed in same time with two UHS-II SD cards"
How fast was that? Compare those numbers with the limits I described.
There are two possibilities:
1) The Prograde is faster than what is possible from the CalDigit. In that case, you'll want benchmarks to know if the difference is significant enough to discount the CalDigit.
2) The Prograde is slower than the limits of the CalDigit. In that case you need someone to do benchmarks on the CalDigit to see what the real limits are.

The Prograde product page doesn't give usable numbers so you'll need benchmarks for that to be able to properly compare.

I see SD cards have their expected read and write speeds indicated on their labels. Some are 300 MB/s read, 250 MB/s write.
https://www.amazon.com/dp/B07TCL222B
https://www.cameramemoryspeed.com/reviews/sd-cards/

The USB 3.0 card reader of the CalDigit SOHO cannot do full speed on two cards (both 600 MB/s read and 500 MB/s write exceed the USB 3.0 limit of ≈460 MB/s).

Maybe the CalDigit can read one card at 300 MB/s and write to the other card at 300 MB/s at the same time though? You didn't describe your use case. I'm guessing you'll have multiple cards that you want to ingest at the same time so being able to read to one and write to the other is not as useful?

I found a list of card readers at https://www.cameramemoryspeed.com/reviews/ but all the USB 3.1 readers are single slot so they might as well be USB 3.0...
 

Berries-A-Million

macrumors 6502
Feb 24, 2019
459
413
I own this dock, if you can tell me what tests you want me to run, I can do a few for you if I have the needed items to do it with. I am not sure I have the SD cards though that you have. :(
 

joevt

Contributor
Jun 21, 2012
6,876
4,172
I own this dock, if you can tell me what tests you want me to run, I can do a few for you if I have the needed items to do it with. I am not sure I have the SD cards though that you have. :(
Insert two SD cards rated for 300 MB/s. Run ATTO Disk Benchmark.app on each separately. Then redo the test with both selected. ATTO Disk Benchmark.app is the only benchmark I know that can test multiple disks at the same time without having to create a RAID 0.

The expectation (guessing) is that it should allow ≈300 MB/s for each ≈460 MB/s for both simultaneously (because of USB 3.0 limit of SD adapter in the SOHO).

Then we need a benchmark of the Prograde to see how much better it is. Can it actually do ≈600 MB/s?

I'm not sure how to test bidirectional transfer speed. The expectation would be that you can read to one disk at 300 MB/s and write to the other at 300 MB/s. Maybe use the time command with the cp or dd command with a large block size to copy a large file from a fast NVMe drive or /dev/zero or /dev/random. Use two terminal windows, one for each disk. Do a read to one and a write to the other at the same time. Actually I think they can be done in the same terminal window using the & flag at the end of the command (creates a sub-process). Also, dd will time itself so it doesn't need the time command. I tried the following:

Code:
# test write speed
[[ -f /Volumes/Datas/zero1 ]] && rm /Volumes/Datas/zero1
dd if=/dev/zero of=/Volumes/Datas/zero1 bs=10m count=1000

# do something to clear disk cache (this doesn't always work?)
diskutil unmount Datas
diskutil mount Datas

# test read speed
dd if=/Volumes/Datas/zero1 of=/dev/null bs=10m count=1000

# do something to clear disk cache (this doesn't always work?)
diskutil unmount Datas
diskutil mount Datas

# test simultaneous read/write speed
time (
	echo start
	( echo startwrite  ; for (( i=0 ; i < 10 ; i++ )) ; do printf "write $i $(date) " ; dd if=/dev/zero of=/Volumes/Datas/zero3 bs=10m iseek=$i oseek=$i count=100 2>&1 | sed -E '/ records /d' ; done ; echo donewrite ) > /tmp/writetest.txt &
	( echo startread   ; for (( i=0 ; i < 10 ; i++ )) ; do printf " read $i $(date) " ; dd if=/Volumes/Datas/zero1 of=/dev/null bs=10m iseek=$i oseek=$i count=100 2>&1 | sed -E '/ records /d' ; done ; echo doneread  ) > /tmp/readtest.txt  &
	wait
	echo done
)
cat /tmp/writetest.txt
cat /tmp/readtest.txt

but I was getting ridiculous read speed of 1.4 GB/s (using a USB 3.0 disk) so there must be some disk cache in memory that is being used? Write speed using dd is reasonable (400 MB/s) though.
Date is included for simultaneous read/write output so you can exclude the info for when one of the loops stops early.

What is the typical file size for these SD cards? The file size will affect the efficiency of the transfers. In the tests above and normal disk benchmarks, only one large file gets tested.
 

Berries-A-Million

macrumors 6502
Feb 24, 2019
459
413
Insert two SD cards rated for 300 MB/s. Run ATTO Disk Benchmark.app on each separately. Then redo the test with both selected. ATTO Disk Benchmark.app is the only benchmark I know that can test multiple disks at the same time without having to create a RAID 0.

The expectation (guessing) is that it should allow ≈300 MB/s for each ≈460 MB/s for both simultaneously (because of USB 3.0 limit of SD adapter in the SOHO).

Then we need a benchmark of the Prograde to see how much better it is. Can it actually do ≈600 MB/s?

I'm not sure how to test bidirectional transfer speed. The expectation would be that you can read to one disk at 300 MB/s and write to the other at 300 MB/s. Maybe use the time command with the cp or dd command with a large block size to copy a large file from a fast NVMe drive or /dev/zero or /dev/random. Use two terminal windows, one for each disk. Do a read to one and a write to the other at the same time. Actually I think they can be done in the same terminal window using the & flag at the end of the command (creates a sub-process). Also, dd will time itself so it doesn't need the time command. I tried the following:

Code:
# test write speed
[[ -f /Volumes/Datas/zero1 ]] && rm /Volumes/Datas/zero1
dd if=/dev/zero of=/Volumes/Datas/zero1 bs=10m count=1000

# do something to clear disk cache (this doesn't always work?)
diskutil unmount Datas
diskutil mount Datas

# test read speed
dd if=/Volumes/Datas/zero1 of=/dev/null bs=10m count=1000

# do something to clear disk cache (this doesn't always work?)
diskutil unmount Datas
diskutil mount Datas

# test simultaneous read/write speed
time (
    echo start
    ( echo startwrite  ; for (( i=0 ; i < 10 ; i++ )) ; do printf "write $i $(date) " ; dd if=/dev/zero of=/Volumes/Datas/zero3 bs=10m iseek=$i oseek=$i count=100 2>&1 | sed -E '/ records /d' ; done ; echo donewrite ) > /tmp/writetest.txt &
    ( echo startread   ; for (( i=0 ; i < 10 ; i++ )) ; do printf " read $i $(date) " ; dd if=/Volumes/Datas/zero1 of=/dev/null bs=10m iseek=$i oseek=$i count=100 2>&1 | sed -E '/ records /d' ; done ; echo doneread  ) > /tmp/readtest.txt  &
    wait
    echo done
)
cat /tmp/writetest.txt
cat /tmp/readtest.txt

but I was getting ridiculous read speed of 1.4 GB/s (using a USB 3.0 disk) so there must be some disk cache in memory that is being used? Write speed using dd is reasonable (400 MB/s) though.

Date is included for simultaneous read/write output so you can exclude the info for when one of the loops stops early.


What is the typical file size for these SD cards? The file size will affect the efficiency of the transfers. In the tests above and normal disk benchmarks, only one large file gets tested.




Insert two SD cards rated for 300 MB/s. Run ATTO Disk Benchmark.app on each separately. Then redo the test with both selected. ATTO Disk Benchmark.app is the only benchmark I know that can test multiple disks at the same time without having to create a RAID 0.

The expectation (guessing) is that it should allow ≈300 MB/s for each ≈460 MB/s for both simultaneously (because of USB 3.0 limit of SD adapter in the SOHO).

Then we need a benchmark of the Prograde to see how much better it is. Can it actually do ≈600 MB/s?

I'm not sure how to test bidirectional transfer speed. The expectation would be that you can read to one disk at 300 MB/s and write to the other at 300 MB/s. Maybe use the time command with the cp or dd command with a large block size to copy a large file from a fast NVMe drive or /dev/zero or /dev/random. Use two terminal windows, one for each disk. Do a read to one and a write to the other at the same time. Actually I think they can be done in the same terminal window using the & flag at the end of the command (creates a sub-process). Also, dd will time itself so it doesn't need the time command. I tried the following:

Code:
# test write speed
[[ -f /Volumes/Datas/zero1 ]] && rm /Volumes/Datas/zero1
dd if=/dev/zero of=/Volumes/Datas/zero1 bs=10m count=1000

# do something to clear disk cache (this doesn't always work?)
diskutil unmount Datas
diskutil mount Datas

# test read speed
dd if=/Volumes/Datas/zero1 of=/dev/null bs=10m count=1000

# do something to clear disk cache (this doesn't always work?)
diskutil unmount Datas
diskutil mount Datas

# test simultaneous read/write speed
time (
    echo start
    ( echo startwrite  ; for (( i=0 ; i < 10 ; i++ )) ; do printf "write $i $(date) " ; dd if=/dev/zero of=/Volumes/Datas/zero3 bs=10m iseek=$i oseek=$i count=100 2>&1 | sed -E '/ records /d' ; done ; echo donewrite ) > /tmp/writetest.txt &
    ( echo startread   ; for (( i=0 ; i < 10 ; i++ )) ; do printf " read $i $(date) " ; dd if=/Volumes/Datas/zero1 of=/dev/null bs=10m iseek=$i oseek=$i count=100 2>&1 | sed -E '/ records /d' ; done ; echo doneread  ) > /tmp/readtest.txt  &
    wait
    echo done
)
cat /tmp/writetest.txt
cat /tmp/readtest.txt

but I was getting ridiculous read speed of 1.4 GB/s (using a USB 3.0 disk) so there must be some disk cache in memory that is being used? Write speed using dd is reasonable (400 MB/s) though.
Date is included for simultaneous read/write output so you can exclude the info for when one of the loops stops early.

What is the typical file size for these SD cards? The file size will affect the efficiency of the transfers. In the tests above and normal disk benchmarks, only one large file gets tested.

Doesn't look like I have SD cards that work for your requirements. Mine are not 300mb/s ones, they are 100mb/s. :( I haven't purchased some in a while. I do have a Samsung 500gb T5 too, but not sure what else I could use in combination. :( Attached is just one of the cards performance. Pretty bad. Also attached the T5 Samsung too. Both by themselves.



Here is the cards I have. https://www.amazon.com/SanDisk-200G...073JY5T7T/ref=cm_cr_arp_d_product_top?ie=UTF8

 

Attachments

  • Screen Shot 2021-08-01 at 10.29.57 AM.png
    Screen Shot 2021-08-01 at 10.29.57 AM.png
    291.9 KB · Views: 109
  • Screen Shot 2021-08-01 at 10.36.05 AM.png
    Screen Shot 2021-08-01 at 10.36.05 AM.png
    314.1 KB · Views: 103

joevt

Contributor
Jun 21, 2012
6,876
4,172
Doesn't look like I have SD cards that work for your requirements. Mine are not 300mb/s ones, they are 100mb/s. :( I haven't purchased some in a while. I do have a Samsung 500gb T5 too, but not sure what else I could use in combination. :( Attached is just one of the cards performance. Pretty bad. Also attached the T5 Samsung too. Both by themselves.
It seems you are getting ridiculous read speeds as well (similar to my dd tests). Maybe ATTO or macOS doesn't know how to clear the cache of a driver for a SD card? I wonder if AmorphousDiskMark.app would give more reasonable read speeds.

What Mac are you using? The T5 seems slow at 450 MB/s. It should be more like 500 MB/s (up to 540 MB/s). It is connected to CalDigit SOHO which is connected to a Thunderbolt port and all devices are connected at 10 Gbps? Are you using a Thunderbolt port of a M1 Mac? M1 Macs have slower USB (whether they're connected at 5 Gbps or 10 Gbps). The second Thunderbolt port of a Thunderbolt 3 device can be used for faster USB.
https://forums.macrumors.com/thread...ally-10gb-s-also-definitely-not-usb4.2269777/

Does the bar graph in the ATTO benchmark show anything interesting? The ATTO benchmark tests multiple block sizes during its tests. You can see them in the bar graph. Usually the largest block size will show the best performance.
 

Berries-A-Million

macrumors 6502
Feb 24, 2019
459
413
It seems you are getting ridiculous read speeds as well (similar to my dd tests). Maybe ATTO or macOS doesn't know how to clear the cache of a driver for a SD card? I wonder if AmorphousDiskMark.app would give more reasonable read speeds.

What Mac are you using? The T5 seems slow at 450 MB/s. It should be more like 500 MB/s (up to 540 MB/s). It is connected to CalDigit SOHO which is connected to a Thunderbolt port and all devices are connected at 10 Gbps? Are you using a Thunderbolt port of a M1 Mac? M1 Macs have slower USB (whether they're connected at 5 Gbps or 10 Gbps). The second Thunderbolt port of a Thunderbolt 3 device can be used for faster USB.
https://forums.macrumors.com/thread...ally-10gb-s-also-definitely-not-usb4.2269777/

Does the bar graph in the ATTO benchmark show anything interesting? The ATTO benchmark tests multiple block sizes during its tests. You can see them in the bar graph. Usually the largest block size will show the best performance.
It's a base M1 Mac Mini. Only device connected to the SOHO was the T5. All other devices are connected to the Mini directly. Yes, using the TB port on it.
 

Attachments

  • Screen Shot 2021-08-02 at 2.22.21 PM.png
    Screen Shot 2021-08-02 at 2.22.21 PM.png
    256.2 KB · Views: 123
  • Screen Shot 2021-08-02 at 2.22.13 PM.png
    Screen Shot 2021-08-02 at 2.22.13 PM.png
    300.7 KB · Views: 115

Berries-A-Million

macrumors 6502
Feb 24, 2019
459
413
It seems you are getting ridiculous read speeds as well (similar to my dd tests). Maybe ATTO or macOS doesn't know how to clear the cache of a driver for a SD card? I wonder if AmorphousDiskMark.app would give more reasonable read speeds.

What Mac are you using? The T5 seems slow at 450 MB/s. It should be more like 500 MB/s (up to 540 MB/s). It is connected to CalDigit SOHO which is connected to a Thunderbolt port and all devices are connected at 10 Gbps? Are you using a Thunderbolt port of a M1 Mac? M1 Macs have slower USB (whether they're connected at 5 Gbps or 10 Gbps). The second Thunderbolt port of a Thunderbolt 3 device can be used for faster USB.
https://forums.macrumors.com/thread...ally-10gb-s-also-definitely-not-usb4.2269777/

Does the bar graph in the ATTO benchmark show anything interesting? The ATTO benchmark tests multiple block sizes during its tests. You can see them in the bar graph. Usually the largest block size will show the best performance.
Here is one without the SOHO in between. Just the T5 directly on the Mini.
 

Attachments

  • Screen Shot 2021-08-02 at 2.26.27 PM.png
    Screen Shot 2021-08-02 at 2.26.27 PM.png
    232.9 KB · Views: 99
  • Screen Shot 2021-08-02 at 2.26.19 PM.png
    Screen Shot 2021-08-02 at 2.26.19 PM.png
    289 KB · Views: 101

Berries-A-Million

macrumors 6502
Feb 24, 2019
459
413
It seems you are getting ridiculous read speeds as well (similar to my dd tests). Maybe ATTO or macOS doesn't know how to clear the cache of a driver for a SD card? I wonder if AmorphousDiskMark.app would give more reasonable read speeds.

What Mac are you using? The T5 seems slow at 450 MB/s. It should be more like 500 MB/s (up to 540 MB/s). It is connected to CalDigit SOHO which is connected to a Thunderbolt port and all devices are connected at 10 Gbps? Are you using a Thunderbolt port of a M1 Mac? M1 Macs have slower USB (whether they're connected at 5 Gbps or 10 Gbps). The second Thunderbolt port of a Thunderbolt 3 device can be used for faster USB.
https://forums.macrumors.com/thread...ally-10gb-s-also-definitely-not-usb4.2269777/

Does the bar graph in the ATTO benchmark show anything interesting? The ATTO benchmark tests multiple block sizes during its tests. You can see them in the bar graph. Usually the largest block size will show the best performance.
Interesting link. Mine only shows up to 5gb on the TB port...and I tried different cables. Odd....My AV Pro 2 also shows the same.
 

Attachments

  • Screen Shot 2021-08-02 at 2.30.39 PM.png
    Screen Shot 2021-08-02 at 2.30.39 PM.png
    43 KB · Views: 104

joevt

Contributor
Jun 21, 2012
6,876
4,172
Interesting link. Mine only shows up to 5gb on the TB port...and I tried different cables. Odd....My AV Pro 2 also shows the same.
All USB devices suffer from M1 USB controller performance. But some will connect at the proper 10 Gbps. You may want to get a Thunderbolt 3 dock for your 10 Gbps devices that are not connecting as 10 Gbps to the M1. Not a lot of Thunderbolt 3 docks have more than a couple 10 Gbps ports, so you may want to add a Thunderbolt 4 hub, but to ensure the Thunderbolt 4 hub doesn't use the USB controller of the M1 Mac (USB tunnelling feature of USB4), it should be connected to a Thunderbolt 3 dock so that the USB controller of the Thunderbolt 3 dock will get used.

Looks like your ATTO Disk Benchmark read scores are being affected by read cache. Check if AmorphousDiskMark, Blackmagic Disk Speed Test, or AJA System Test Lite have the same problem.
 

joevt

Contributor
Jun 21, 2012
6,876
4,172
The M1 iMac has a ASM3142 USB controller for its two non-thunderbolt USB ports so they are not affected by the M1 USB problems.
 

Berries-A-Million

macrumors 6502
Feb 24, 2019
459
413
All USB devices suffer from M1 USB controller performance. But some will connect at the proper 10 Gbps. You may want to get a Thunderbolt 3 dock for your 10 Gbps devices that are not connecting as 10 Gbps to the M1. Not a lot of Thunderbolt 3 docks have more than a couple 10 Gbps ports, so you may want to add a Thunderbolt 4 hub, but to ensure the Thunderbolt 4 hub doesn't use the USB controller of the M1 Mac (USB tunnelling feature of USB4), it should be connected to a Thunderbolt 3 dock so that the USB controller of the Thunderbolt 3 dock will get used.

Looks like your ATTO Disk Benchmark read scores are being affected by read cache. Check if AmorphousDiskMark, Blackmagic Disk Speed Test, or AJA System Test Lite have the same problem.
You are saying get a TB3 dock like a Caldigit TS3 plus, and then get a TB4 hub and hook it into that? Seems like a lot just to get that to work.
 

joevt

Contributor
Jun 21, 2012
6,876
4,172
You are saying get a TB3 dock like a Caldigit TS3 plus, and then get a TB4 hub and hook it into that? Seems like a lot just to get that to work.
True. You only need to do that if you want to use the USB controller of the TB4 hub instead of the USB controller of the M1 Mac. The performance issue of M1 USB probably isn't even noticeable. These special arrangements are mostly just for benchmarks.
 
  • Like
Reactions: Berries-A-Million

coolajami

macrumors 6502
Jun 6, 2009
253
176
Hi @EzisAA
The Caldigit SOHO is a USB-C multifunctional dock and due to Bus restrictions the most likely scenario is that the SD Card reader will share the bus with the MicroSD card, so when both readers are used at the same time, they would split the speed between the two card readers; there is a chance that the card readers do not work at the same time, but this usually would be mentioned in the product's manual (that said, Caldigit is a bit sneaky on this kind of stuff so I wouldn't be surprised if that's actually the case). I would thought, that if they achieved UHS-II speed in both readers at the same time, that would have reached their marketing material.

This review implies that the latter may be the case and also that they the SD reader is slower that advertised: https://www.windowscentral.com/caldigit-soho-dock-review

The truth is that the fact that the SOHO supports a USB-C, USB-A and a Monitor Port at the same time, at full speed, makes extremely unlikely to get full UHS-iI speed for both card readers at the same time, because the dock would need to limit the bus usage in order to leave some space for the other ports to operate, even if are doing nothing; moreover it would be very unlikely as well to get the maximum UHS-II speed for even reading a single card for the same reasons(something that is suggested in the review above).

In summary, if you need a dual UHS-II card reader you would be a lot safer going with the Prograde Dual slot SD reader.
 
  • Like
Reactions: EzisAA

joevt

Contributor
Jun 21, 2012
6,876
4,172
Hi @EzisAA
The Caldigit SOHO is a USB-C multifunctional dock and due to Bus restrictions the most likely scenario is that the SD Card reader will share the bus with the MicroSD card, so when both readers are used at the same time, they would split the speed between the two card readers; there is a chance that the card readers do not work at the same time, but this usually would be mentioned in the product's manual (that said, Caldigit is a bit sneaky on this kind of stuff so I wouldn't be surprised if that's actually the case). I would thought, that if they achieved UHS-II speed in both readers at the same time, that would have reached their marketing material.

This review implies that the latter may be the case and also that they the SD reader is slower that advertised: https://www.windowscentral.com/caldigit-soho-dock-review

The truth is that the fact that the SOHO supports a USB-C, USB-A and a Monitor Port at the same time, at full speed, makes extremely unlikely to get full UHS-iI speed for both card readers at the same time, because the dock would need to limit the bus usage in order to leave some space for the other ports to operate, even if are doing nothing; moreover it would be very unlikely as well to get the maximum UHS-II speed for even reading a single card for the same reasons(something that is suggested in the review above).

In summary, if you need a dual UHS-II card reader you would be a lot safer going with the Prograde Dual slot SD reader.
Display outputs of a USB-C multifunction hub use separate lines than USB so they do not affect USB performance (see USB-C DisplayPort Alt Mode).
The USB-C and USB-A ports are both just USB. They are from a 10 Gbps USB hub. The notion that a dock needs to limit bus usage to leave some space for the other ports even if they are doing nothing is ridiculous. A simple benchmark of any USB hub can prove that false. With the CalDigit SOHO, I can get 1029/1012 MB/s read/write which is only slightly less than what you can get directly (1044/1016 MB/s)

You're right that we don't know if the SOHO can do dual UHS-II. We do know that if it could, that it would be limited to ≈460 MB/s total since the SD card reader is a USB 3.0 device connected to the USB 3.1 gen 2 hub.
 

coolajami

macrumors 6502
Jun 6, 2009
253
176
Display outputs of a USB-C multifunction hub use separate lines than USB so they do not affect USB performance (see USB-C DisplayPort Alt Mode).
The USB-C and USB-A ports are both just USB. They are from a 10 Gbps USB hub. The notion that a dock needs to limit bus usage to leave some space for the other ports even if they are doing nothing is ridiculous. A simple benchmark of any USB hub can prove that false. With the CalDigit SOHO, I can get 1029/1012 MB/s read/write which is only slightly less than what you can get directly (1044/1016 MB/s)

You're right that we don't know if the SOHO can do dual UHS-II. We do know that if it could, that it would be limited to ≈460 MB/s total since the SD card reader is a USB 3.0 device connected to the USB 3.1 gen 2 hub.

I don't understand what you're trying to prove here.

First of all, if there are display ports in a USB-C hub, that would cut the number of available buses for data transfer in half. It would not affect the speed of the remaining bus that is used for data transfer, but that would mean that any data ports would need to share the same bus for all the data-related activity. In the SOHO dock, there are 4 ports (1 x USB-C, 1 x USB-A and 2 card slots) that are sharing the same data bus. Furthermore, the USB architecture requires that all USB ports receiving a minimum level of power and some data packets for initiating a "handshake" with any new connection. Yes, it may not affect visibly the read/write performance, especially if you're connecting a single device, but adds up to the bus usage, especially in terms of power, if you're using the SOHO as a bus-powered device. That's why you cannot power up certain usb-powered devices from a bus-powered hub.

So, in the absence of real-life data, I'm making an educated guess and I'm saying that the SOHO Card Readers would not perform at full speed when both are used at the same time considering that they're sharing the bus between them plus other two ports.

By comparison, the Prograde Dual slot SD Reader has only two data ports (2 x SD readers) that each one can be allocated a dedicated data bus, so both card readers can perform at full speed when they work at the same time , and this is the answer in the original question.
 
  • Like
Reactions: EzisAA

joevt

Contributor
Jun 21, 2012
6,876
4,172
I don't understand what you're trying to prove here.
I'll try again:

First of all, if there are display ports in a USB-C hub, that would cut the number of available buses for data transfer in half. It would not affect the speed of the remaining bus that is used for data transfer, but that would mean that any data ports would need to share the same bus for all the data-related activity.
A USB-C connector has 4 lines for super speed data and 2 lines for USB 2.0 data.
USB 3.0 and USB 3.1 gen 2 only uses 2 lines for super speed data (one for transmit and one for receive). The other two lines are not used except for USB-C DisplayPort Alt Mode. The lines for DisplayPort and USB are separate. They come from different devices (USB controller and GPU) and go do different devices (USB hub/device and display). Therefore, DisplayPort has no effect on USB 3.0 and USB 3.1 data.

There does not exist a USB-C hub that has more than one USB 3.0 or USB 3.1 gen 2 bus. Maybe you are thinking of Thunderbolt.

Now, for USB 3.2 gen 2x2, the other two lines can be used for USB data (same bus but it's twice as wide), but the CalDigit SOHO does not contain a USB 3.2 gen 2x2 hub, and if it did, then it would not be able to do DisplayPort or it would have to be switched to USB 3.1 gen 2 mode. I don't know of any USB 3.2 gen 2x2 hubs.

In the SOHO dock, there are 4 ports (1 x USB-C, 1 x USB-A and 2 card slots) that are sharing the same data bus.
Yes. At least you're not including the DisplayPort and HDMI port in this statement.

Furthermore, the USB architecture requires that all USB ports receiving a minimum level of power and some data packets for initiating a "handshake" with any new connection. Yes, it may not affect visibly the read/write performance, especially if you're connecting a single device, but adds up to the bus usage, especially in terms of power, if you're using the SOHO as a bus-powered device. That's why you cannot power up certain usb-powered devices from a bus-powered hub.
Agreed. The CalDigit SOHO will probably always have enough power for two SD cards so power is not a consideration. The initiating handshake as like 1% of traffic so it is negligible.

So, in the absence of real-life data, I'm making an educated guess and I'm saying that the SOHO Card Readers would not perform at full speed when both are used at the same time considering that they're sharing the bus between them plus other two ports.
I performed the benchmarks. Are they not real enough? The overhead of having to go through the USB 3.1 gen 2 hub of the CalDigit is negligible. If the SD card reader was a USB 3.1 gen 2 device, then it could do 300MB/s x 2 = 600 MB/s but it's a USB 3.0 device so it can't do more than ≈230 MB/s for each card if it can do two cards simultaneously.

By comparison, the Prograde Dual slot SD Reader has only two data ports (2 x SD readers) that each one can be allocated a dedicated data bus, so both card readers can perform at full speed when they work at the same time , and this is the answer in the original question.
Again, no such thing as multiple data buses in a USB-C hub. The Prograde Dual slot SD Reader is either a single USB device (like the SD card reader of the CalDigit SOHO) or two USB devices connected to a USB 3.1 gen 2 hub. We don't know if the USB device or devices in the Prograde are USB 3.0 or USB 3.1 gen 2. I suspect it could be two USB 3.0 devices that can add up to ≈624 MB/s or whatever the max speed of two cards is.

I took a closer look at the CalDigit SOHO SD Card Reader. I don't have any SD cards to test but in the IORegistry of the Mac, I see that it is using the IOUSBMassStorageDriver. It's not using the IOUSBMassStorageUASDriver so I guess it doesn't support UASP. Is there such thing as an SD card reader that can do UASP? Or maybe I need to connect an SD Card for it to load the UASP driver (not likely)? Anyway, the SD Card Reader uses the SCSI transparent command set, USB Mass Storage Class Bulk-Only (BBB) Transport (again: not UASP). It has two SCSI logical unit numbers, each with its own IOBlockStorageDriver. That probably indicates that it can access each SD card separately.
 

EzisAA

macrumors regular
Original poster
Jan 26, 2017
110
66
Riga, Latvia
I'll try again:


A USB-C connector has 4 lines for super speed data and 2 lines for USB 2.0 data.
USB 3.0 and USB 3.1 gen 2 only uses 2 lines for super speed data (one for transmit and one for receive). The other two lines are not used except for USB-C DisplayPort Alt Mode. The lines for DisplayPort and USB are separate. They come from different devices (USB controller and GPU) and go do different devices (USB hub/device and display). Therefore, DisplayPort has no effect on USB 3.0 and USB 3.1 data.

There does not exist a USB-C hub that has more than one USB 3.0 or USB 3.1 gen 2 bus. Maybe you are thinking of Thunderbolt.

Now, for USB 3.2 gen 2x2, the other two lines can be used for USB data (same bus but it's twice as wide), but the CalDigit SOHO does not contain a USB 3.2 gen 2x2 hub, and if it did, then it would not be able to do DisplayPort or it would have to be switched to USB 3.1 gen 2 mode. I don't know of any USB 3.2 gen 2x2 hubs.


Yes. At least you're not including the DisplayPort and HDMI port in this statement.


Agreed. The CalDigit SOHO will probably always have enough power for two SD cards so power is not a consideration. The initiating handshake as like 1% of traffic so it is negligible.


I performed the benchmarks. Are they not real enough? The overhead of having to go through the USB 3.1 gen 2 hub of the CalDigit is negligible. If the SD card reader was a USB 3.1 gen 2 device, then it could do 300MB/s x 2 = 600 MB/s but it's a USB 3.0 device so it can't do more than ≈230 MB/s for each card if it can do two cards simultaneously.


Again, no such thing as multiple data buses in a USB-C hub. The Prograde Dual slot SD Reader is either a single USB device (like the SD card reader of the CalDigit SOHO) or two USB devices connected to a USB 3.1 gen 2 hub. We don't know if the USB device or devices in the Prograde are USB 3.0 or USB 3.1 gen 2. I suspect it could be two USB 3.0 devices that can add up to ≈624 MB/s or whatever the max speed of two cards is.

I took a closer look at the CalDigit SOHO SD Card Reader. I don't have any SD cards to test but in the IORegistry of the Mac, I see that it is using the IOUSBMassStorageDriver. It's not using the IOUSBMassStorageUASDriver so I guess it doesn't support UASP. Is there such thing as an SD card reader that can do UASP? Or maybe I need to connect an SD Card for it to load the UASP driver (not likely)? Anyway, the SD Card Reader uses the SCSI transparent command set, USB Mass Storage Class Bulk-Only (BBB) Transport (again: not UASP). It has two SCSI logical unit numbers, each with its own IOBlockStorageDriver. That probably indicates that it can access each SD card separately.
I ask simple question and was waiting a real life tests or screenshot when both cards readers is used with UHS-II cards v60 or v90, but not teori about USB ports, display ports/copy paste lot off senseless information.
 
  • Like
Reactions: coolajami

joevt

Contributor
Jun 21, 2012
6,876
4,172
was waiting a real life tests or screenshot when both cards readers is used with UHS-II cards v60 or v90
I cannot help with your patience. With or without my replies, you'll have to continue to wait for the information you want. For info on the CalDigit SOHO, it would cost less for you to get a CalDigit SOHO than for me to buy two 300 MB/s SD cards (since you've already decided to switch to UHS-II cards).

The fact that you're still here means that you haven't decided between the CalDigit and Prograde. I suppose that means you're ok with the information already provided in this thread - the fact that the CalDigit cannot do more than 460 MB/s for two SD cards simultaneously and doesn't support UASP? Or this info is insufficient for you to make a decision because 460 MB/s is only the max and the min could be much less and you don't know for sure that the Prograde can do much better than that?

I found one benchmark that shows read performance of SD Card is at least 250 MB/s but they did not test both simultaneously. So now you have a minimum for one SD card at least.

I found an SD card reader that supports UASP so I guess they do exist but I don't know how much of an improvement in SD card read/write speed that gives.
https://www.connection.com/product/...er-with-uasp-sd-4.0-uhs-ii/2sd4fcru3/32624272
but the Startech.com page doesn't mention UASP. The page about UASP at StarTech.com says UASP can make things 70% faster https://blog.startech.com/post/all-you-need-to-know-about-uasp/

but not teori about USB ports, display ports/copy paste lot off senseless information.
I cannot help with your reading comprehension skills. If there is a word you don't understand then try googling it. Wikipedia has pages on USB, DisplayPort, SD Cards, etc.

What I can do is correct or elaborate on statements made in posts by other people about USB ports, display ports, etc, so that's what I did.
 

EzisAA

macrumors regular
Original poster
Jan 26, 2017
110
66
Riga, Latvia
I cannot help with your patience. With or without my replies, you'll have to continue to wait for the information you want. For info on the CalDigit SOHO, it would cost less for you to get a CalDigit SOHO than for me to buy two 300 MB/s SD cards (since you've already decided to switch to UHS-II cards).

The fact that you're still here means that you haven't decided between the CalDigit and Prograde. I suppose that means you're ok with the information already provided in this thread - the fact that the CalDigit cannot do more than 460 MB/s for two SD cards simultaneously and doesn't support UASP? Or this info is insufficient for you to make a decision because 460 MB/s is only the max and the min could be much less and you don't know for sure that the Prograde can do much better than that?

I found one benchmark that shows read performance of SD Card is at least 250 MB/s but they did not test both simultaneously. So now you have a minimum for one SD card at least.

I found an SD card reader that supports UASP so I guess they do exist but I don't know how much of an improvement in SD card read/write speed that gives.
https://www.connection.com/product/...er-with-uasp-sd-4.0-uhs-ii/2sd4fcru3/32624272
but the Startech.com page doesn't mention UASP. The page about UASP at StarTech.com says UASP can make things 70% faster https://blog.startech.com/post/all-you-need-to-know-about-uasp/


I cannot help with your reading comprehension skills. If there is a word you don't understand then try googling it. Wikipedia has pages on USB, DisplayPort, SD Cards, etc.

What I can do is correct or elaborate on statements made in posts by other people about USB ports, display ports, etc, so that's what I did.
SOHO from perspectic is good, because that have USB ports also and HDMI, but withot prof that can approve two cards reading speed about 400-460MB/s(each 200-230MB/s) it's more like lotery if I buy SOHO.

Prograde with two USH-II cards can do together about 460MB/s (each ~230MB/s) what I see from test and rewvies. But still nobody doing test with SOHO and two USH-II card. ? Not big diferent for a price betwhen SOHO and Porgrade. But if SOHO do the same as my Uragrade UHS-II card reader - one card 260MB/s, but two cards reading speed is 120MB/s(each card 60MB/s), this suck.

Also SOHO can charging my Mac, ofcors for M1 it's not so actual, but it's good bonus. But primary is SPEED off reading two cards.

I have UHS-II card reader who don't work, like I needed. Also have adapter from USB-C to USB-A (not much use, but still need to take with me) and USB-C to HDMI dongol. SOHO in teori can fix all this dongol party with on dock, but in teori...
 

joevt

Contributor
Jun 21, 2012
6,876
4,172
I tried contacting CalDigit but they don't have a benchmark to give for dual SD card reading performance. ?
They say it can do two cards at once at least but that's about all.
 

joevt

Contributor
Jun 21, 2012
6,876
4,172
I ordered a couple SD cards because I am curious about SD cards. I received a Micro SD card today. It's a Silicon Power 128GB UHS-II (U3) V90 (290 MB/s read, 160 MB/s write). It comes formatted as ExFAT on MBR.
I tried it in the CalDigit SOHO and got read/write 276/100 MB/s
Then I tried formatting it as HFS+: 290/72 MB/s
The write speed gets slower the more I use it. I guess that's ok since I only bought this for the read speed.

It comes with an SD card adapter, so I also tried the SD Card slot of the SOHO but I only got 94/45 MB/s - it could be a problem with the adapter.

In any case, the CalDigit SOHO SD Card reader does not support UASP for sure. CalDigit support said it does support UASP but I guess they don't know what they're talking about. I don't have any evidence that UASP would improve anything in this benchmark - even without UASP I was able to reach the rated 290 MB/s read speed.

The SD Cards I ordered will arrive later this week.

I looked for Micro SD Card to SD Card adapters (so I could use a SD Card connected to the Micro SD Card slot of the SOHO) but none of them looked like they could do UHS-II.
https://www.amazon.ca/Electop-Extension-Flexible-Compatible-Raspberry/dp/B07SV5ZFW4
 

EzisAA

macrumors regular
Original poster
Jan 26, 2017
110
66
Riga, Latvia
I ordered a couple SD cards because I am curious about SD cards. I received a Micro SD card today. It's a Silicon Power 128GB UHS-II (U3) V90 (290 MB/s read, 160 MB/s write). It comes formatted as ExFAT on MBR.
I tried it in the CalDigit SOHO and got read/write 276/100 MB/s
Then I tried formatting it as HFS+: 290/72 MB/s
The write speed gets slower the more I use it. I guess that's ok since I only bought this for the read speed.

It comes with an SD card adapter, so I also tried the SD Card slot of the SOHO but I only got 94/45 MB/s - it could be a problem with the adapter.

In any case, the CalDigit SOHO SD Card reader does not support UASP for sure. CalDigit support said it does support UASP but I guess they don't know what they're talking about. I don't have any evidence that UASP would improve anything in this benchmark - even without UASP I was able to reach the rated 290 MB/s read speed.

The SD Cards I ordered will arrive later this week.

I looked for Micro SD Card to SD Card adapters (so I could use a SD Card connected to the Micro SD Card slot of the SOHO) but none of them looked like they could do UHS-II.
https://www.amazon.ca/Electop-Extension-Flexible-Compatible-Raspberry/dp/B07SV5ZFW4
If you have another SD cards maybe you can write to microSD V90 and another SD card ~10GB data. After that copy from two cards to Mac. Activity Monitor in "Disk" you will see speed of disk whrite if you dont have another monotiring app who show each disk/card speed.

If speed will be more what you get from single microSD cards read speed (from your test it was 276-290MB/s) it's will be WIN!
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.