Changes between Version 3 and Version 4 of Performance/Sep2011
- Timestamp:
- 2011-09-27T03:20:30Z (13 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
Performance/Sep2011
v3 v4 24 24 25 25 MDMF is fast! Trunk downloads 1MB/10MB/100MB MDMF files at around 4MBps. 26 ~~The download speed seems unaffected by k (from 1 to 60)~~. Partial 27 reads take the expected amount of time: O(data_read), slightly quantized 28 near the 128KiB segment size.26 Download speed drops linearly with k, k=60 takes roughly 2x more time 27 than k=30. Partial reads take the expected amount of time: O(data_read), 28 slightly quantized near the 128KiB segment size. 29 29 30 (update 25-Sep: the test harness appears to have been flawed, and all31 MDMF files were actually k=3. A new test is in the works to get proper32 data on how MDMF read speed varies with k).33 34 * MDMF read versus k, 100MB attachment:MDMF-100MB-vs-k.png (timing5.out)35 30 * MDMF partial reads, 100MB attachment:MDMF-100MB-partial.png (timing6.out) 36 31 * MDMF partial reads, 1MB attachment:MDMF-1MB-partial.png (timing6.out) … … 44 39 WAN links, and it's only the fast LAN connections of the atlasperf1 grid that 45 40 exposes the delay). In addition, both old and new downloaders suffer from a 46 linear slowdown as k increases. On the new-downloader, k=60 takes roughly 3x47 more time than k= 15. Trunk contains a fix for #1268 that might improve speeds41 linear slowdown as k increases. On the new-downloader, k=60 takes roughly 2x 42 more time than k=30. Trunk contains a fix for #1268 that might improve speeds 48 43 by 5% compared to 1.8.2. Partial reads take the expected amount of time, 49 44 although the segsize-quantization was nowhere nearly as clear as with MDMF. … … 51 46 52 47 * CHK (1.7.1/1.8.2/trunk) read versus k, 1MB attachment:CHK-1MB-vs-k.png (t4/t/t3) 53 * CHK (1.7.1/1.8.2/trunk) read versus k, 100MB attachment:CHK-100MB-vs-k.png (t4/t/t3)48 * CHK (1.7.1/1.8.2/trunk) and MDMF (trunk) read versus k, 100MB attachment:CHKMDMF-100MB-vs-k.png (t4/t/t3/t8) 54 49 55 50 * CHK (1.8.2) read versus segsize, 1MB attachment:CHK-1MB-vs-segsize.png (t2) … … 74 69 the memory footprint goals (requires O(numsegments) memory), but probably 75 70 tolerable unless the filesize is really large. 71 * note that 1.7.1 "cheats" with both the crypttext_hash_tree and the 72 block_hash_tree. MDMF in trunk cheats with the block_hash_tree and 73 does not have a crypttext_hash_tree 76 74 * encourage use of larger segsize for large files (at the expense of 77 75 alacrity) 78 76 * use unencrypted HTTP for share reads 79 77 80 readv() is the least-work/most-promising, ~~since MDMF has readv() and81 achieves high speeds. First step is to do whatever MDMF is doing~~ 78 readv() is the least-work/most-promising, since MDMF has readv() and 79 is faster than trunk, although not as fast as 1.7.1. 82 80 83 81 == Future Tests == 84 82 85 83 * measure alacrity: ask for random single byte, measure elapsed time 86 * measure partial-read speeds for CHK87 84 * measure SDMF/MDMF modification times 88 85 * measure upload times