* Intel Erasure Code library @ 2013-12-16 9:56 Loic Dachary 2013-12-16 13:10 ` Andreas Joachim Peters 0 siblings, 1 reply; 4+ messages in thread From: Loic Dachary @ 2013-12-16 9:56 UTC (permalink / raw) To: Ceph Development [-- Attachment #1: Type: text/plain, Size: 310 bytes --] 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 [-- Attachment #2: OpenPGP digital signature --] [-- Type: application/pgp-signature, Size: 263 bytes --] ^ permalink raw reply [flat|nested] 4+ messages in thread
* RE: Intel Erasure Code library 2013-12-16 9:56 Intel Erasure Code library Loic Dachary @ 2013-12-16 13:10 ` Andreas Joachim Peters 2013-12-16 13:15 ` Loic Dachary 0 siblings, 1 reply; 4+ messages in thread From: Andreas Joachim Peters @ 2013-12-16 13:10 UTC (permalink / raw) To: Loic Dachary, Ceph Development Hi Loic, this looks excellent on new INTEL hardware .... certainly ;-) 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): 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@vger.kernel.org [ceph-devel-owner@vger.kernel.org] on behalf of Loic Dachary [loic@dachary.org] 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 -- To unsubscribe from this list: send the line "unsubscribe ceph-devel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Intel Erasure Code library 2013-12-16 13:10 ` Andreas Joachim Peters @ 2013-12-16 13:15 ` Loic Dachary 2013-12-16 13:45 ` Andreas Joachim Peters 0 siblings, 1 reply; 4+ messages in thread From: Loic Dachary @ 2013-12-16 13:15 UTC (permalink / raw) To: Andreas Joachim Peters, Ceph Development [-- Attachment #1: Type: text/plain, Size: 5097 bytes --] 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@vger.kernel.org [ceph-devel-owner@vger.kernel.org] on behalf of Loic Dachary [loic@dachary.org] > 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 [-- Attachment #2: OpenPGP digital signature --] [-- Type: application/pgp-signature, Size: 263 bytes --] ^ permalink raw reply [flat|nested] 4+ messages in thread
* RE: Intel Erasure Code library 2013-12-16 13:15 ` Loic Dachary @ 2013-12-16 13:45 ` Andreas Joachim Peters 0 siblings, 0 replies; 4+ messages in thread From: Andreas Joachim Peters @ 2013-12-16 13:45 UTC (permalink / raw) To: Loic Dachary, Ceph Development 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@dachary.org] 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@vger.kernel.org [ceph-devel-owner@vger.kernel.org] on behalf of Loic Dachary [loic@dachary.org] > 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@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2013-12-16 13:45 UTC | newest] Thread overview: 4+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2013-12-16 9:56 Intel Erasure Code library Loic Dachary 2013-12-16 13:10 ` Andreas Joachim Peters 2013-12-16 13:15 ` Loic Dachary 2013-12-16 13:45 ` Andreas Joachim Peters
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.