Hi Loic, 
I was applying the changes and the 
situation improves, however there is still one important thing which 
actually dominated all the measurements which were needing larger packet
 sizes (everything besides Raid6):

                     pad_in_length(unsigned in_length)


The implementation is sort of 'unlucky' and slow when one increases the 
packetsize.

   while (in_length%(k*w*packetsize*sizeof(int)) != 0)
      in_length++;

better do like this:

  alignment = k*w*packetsize*sizeof(int);
  in_length += (alignment - (in_length%alignment);

E.g. for the CauchyGood algorithm one should increase the packetsize and when 
changing the pad_in_length 
implementation one get's excellent (pure encoding) performance for (3+2) : 2.6 
GB/s and it scales well with the number of core's to > 8 GB/s.

I compared this with the output of the 'encode' example of the jerasure
 example and it gives the same result for (3+2), so that looks now good 
and consistent! (10,4) is ~ 610 MB/s.

... 
Finally the description of Jerasure 2.0 looks really great and will probably 
shift all the performance problems upstream  ;-)

Do you evt. want to add support into the plugin for local parities (like Xorbas 
does) to improve the disk draining performance?

Cheers Andreas.--
To unsubscribe from this list: send the line "unsubscribe ceph-devel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to