RE: Intel Erasure Code library

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Sure, 
you unpack the library and do:

make perfs

./erasure_code_perf


just to clarify one thing (I got comfused by their argument meanings), 
I tested indeed 4 data + 6 parity stripes (the measurements quoted) ... putting the right argument you get 10+4 (but the results are similiar for the encoding within 10%).

So if you want to test the same thing I measured before, edit:
erasure_code/erasure_code_perf.c:
        m = 32; ===>  m = 10
        k = 28 ===>  k = 4;

If one wants to do 10+4, put m = 14, k=10. 

The result for m=14,k=10 is for machine 1)
erasure_code_encode_cold: runtime =    1175351 usecs, bandwidth 4479 MB in 1.1754 sec = 3996.77 MB/s
erasure_code_decode_cold: runtime =    1186132 usecs, bandwidth 4479 MB in 1.1861 sec = 3960.44 MB/s (recover 4)
erasure_code_decode_cold: runtime =     507534 usecs, bandwidth 3519 MB in 0.5075 sec = 7272.37 MB/s (recover 1)


To measure decoding for single stripe error change this part:

for (i=0, nerrs=0; i<k && nerrs<m-k; i++){
                err = 1 & rand();
                src_in_err[i] = err;
                if (err) {
                        src_err_list[nerrs++] = i;
                        break;
           }
        }

To measure with warm cache, change the #define:
//#define CACHED_TEST


Cheers Andreas.




________________________________________
From: Loic Dachary [loic@xxxxxxxxxxx]
Sent: 16 December 2013 14:15
To: Andreas Joachim Peters; Ceph Development
Subject: Re: Intel Erasure Code library

On 16/12/2013 14:10, Andreas Joachim Peters wrote:
> Hi Loic,
> this looks excellent on new INTEL hardware .... certainly ;-)

:-) For sure.

> I was just running some benchmarks on different platforms. It should be extremely simple to make a plugin ... the API is simple ...
>
> I configured (10+4):

I'd like to try the same command you did. Could you include the command you ran ? And if you have modified the source the corresponding patch ?


>
> 1)
> model name    : Intel(R) Xeon(R) CPU E5-2650 0 @ 2.00GHz
> stepping      : 7
> cpu MHz               : 2001.000
> cache size    : 20480 KB
>
> (cold cache)
> erasure_code_encode_cold: runtime =     684410 usecs, bandwidth 3199 MB in 0.6844 sec = 4902.61 MB/s
> erasure_code_decode_cold: runtime =     340002 usecs, bandwidth 2239 MB in 0.3400 sec = 6908.12 MB/s (recover 3)
> erasure_code_decode_cold: runtime =     176811 usecs, bandwidth 1599 MB in 0.1768 sec = 9488.64 MB/s (recover 1)
>
> (warm cache)
> erasure_code_encode_warm: runtime =    1744615 usecs, bandwidth 9985 MB in 1.7446 sec = 6001.55 MB/s
> erasure_code_decode_warm: runtime =     860179 usecs, bandwidth 6989 MB in 0.8602 sec = 8520.65 MB/s (recover 3)
>
>
> 2)
> model name      : AMD Opteron(TM) Processor 6276
> stepping        : 2
> cpu MHz         : 2300.000
> cache size      : 2048 KB
>
> (cold cache)
> erasure_code_encode_cold: runtime =    1769806 usecs, bandwidth 3199 MB in 1.7698 sec = 1895.91 MB/s
> erasure_code_decode_cold: runtime =    1135461 usecs, bandwidth 2239 MB in 1.1355 sec = 2068.56 MB/s (recover 3)
> erasure_code_decode_cold: runtime =     553315 usecs, bandwidth 1599 MB in 0.5533 sec = 3032.08 MB/s (recover 1)
>
> (warm cache)
> erasure_code_encode_warm: runtime =    2158180 usecs, bandwidth 9985 MB in 2.1582 sec = 4851.50 MB/s
> erasure_code_decode_warm: runtime =    1133059 usecs, bandwidth 6989 MB in 1.1331 sec = 6468.58 MB/s (recover 3)
>
>
> 3) [running in a virtual machine!!!]
>
> model name    : Intel Core i7 9xx (Nehalem Class Core i7)
> stepping      : 3
> cpu MHz               : 2266.746
> cache size    : 4096 KB
>
> (cold cache)
> erasure_code_encode_cold: runtime =    1125543 usecs, bandwidth 3199 MB in 1.1255 sec = 2981.13 MB/s
> erasure_code_decode_cold: runtime =     554727 usecs, bandwidth 2239 MB in 0.5547 sec = 4234.11 MB/s (recover 3)
> erasure_code_decode_cold: runtime =     324933 usecs, bandwidth 1599 MB in 0.3249 sec = 5163.21 MB/s (recover 1)
>
> (warm cache)
> erasure_code_encode_warm: runtime =    2636439 usecs, bandwidth 9985 MB in 2.6364 sec = 3971.42 MB/s
> erasure_code_decode_warm: runtime =    1263597 usecs, bandwidth 6989 MB in 1.2636 sec = 5800.33 MB/s (recover 3)
>
> 4)
> model name      : Intel(R) Xeon(R) CPU           L5520  @ 2.27GHz
> stepping        : 5
> cpu MHz         : 1600.000
> cache size      : 8192 KB
>
> (cold cache)
> erasure_code_encode_cold: runtime =    1166904 usecs, bandwidth 3199 MB in 1.1669 sec = 2875.47 MB/s
> erasure_code_decode_cold: runtime =     345337 usecs, bandwidth 1599 MB in 0.3453 sec = 4858.14 MB/s (recover 1)
> erasure_code_decode_cold: runtime =     575194 usecs, bandwidth 2239 MB in 0.5752 sec = 4083.45 MB/s (recover 3)
>
> (warm cache)
> erasure_code_encode_warm: runtime =    2686134 usecs, bandwidth 9985 MB in 2.6861 sec = 3897.94 MB/s
> erasure_code_decode_warm: runtime =     777904 usecs, bandwidth 4992 MB in 0.7779 sec = 6729.88 MB/s (recover 1)
> erasure_code_decode_warm: runtime =    1278117 usecs, bandwidth 6989 MB in 1.2781 sec = 5734.44 MB/s (recover 3)
>
> 5)
> model name    : Intel(R) Xeon(R) CPU           L5520  @ 2.27GHz
> stepping      : 5
> cpu MHz               : 1600.000
> cache size    : 8192 KB
>
> (cold cache)
> erasure_code_encode_cold: runtime =     956274 usecs, bandwidth 3199 MB in 0.9563 sec = 3508.82 MB/s
> erasure_code_decode_cold: runtime =     264835 usecs, bandwidth 1599 MB in 0.2648 sec = 6334.87 MB/s (recover 1)
> erasure_code_decode_cold: runtime =     463120 usecs, bandwidth 2239 MB in 0.4631 sec = 5071.63 MB/s (recover 3)
>
>
> (warm cache)
> erasure_code_encode_warm: runtime =    2601232 usecs, bandwidth 9985 MB in 2.6012 sec = 4025.17 MB/s
> erasure_code_decode_warm: runtime =     683921 usecs, bandwidth 4992 MB in 0.6839 sec = 7654.69 MB/s (recover 1)
> erasure_code_decode_warm: runtime =    1258408 usecs, bandwidth 6989 MB in 1.2584 sec = 5824.25 MB/s (recover 3)
>
> ___________________________________
> From: ceph-devel-owner@xxxxxxxxxxxxxxx [ceph-devel-owner@xxxxxxxxxxxxxxx] on behalf of Loic Dachary [loic@xxxxxxxxxxx]
> Sent: 16 December 2013 10:56
> To: Ceph Development
> Subject: Intel Erasure Code library
>
> Hi,
>
> A new Erasure Code library has been released as Free Software
>
> https://01.org/storage-acceleration-library/downloads/2013/isa-l-open-source-release
>
> It is quite tempting to write a Ceph erasure code plugin for it and see how it performs :-)
>
> Cheers
>
> --
> Loïc Dachary, Artisan Logiciel Libre
>

--
Loïc Dachary, Artisan Logiciel Libre
--
To unsubscribe from this list: send the line "unsubscribe ceph-devel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [CEPH Users]     [Ceph Large]     [Information on CEPH]     [Linux BTRFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]
  Powered by Linux