[PD] Findings regarding performance
jancsika at yahoo.com
Thu Dec 1 17:21:48 CET 2011
----- Original Message -----
> From: Mathieu Bouchard <matju at artengine.ca>
> To: Jonathan Wilkes <jancsika at yahoo.com>
> Cc: Roman Haefeli <reduzent at gmail.com>; PD list <pd-list at iem.at>
> Sent: Thursday, December 1, 2011 10:55 AM
> Subject: Re: [PD] Findings regarding performance
> Le 2011-12-01 à 07:00:00, Jonathan Wilkes a écrit :
>> After looking at d_arithmetic.c, I'm curiouswhy there is
> scalartimes_perform and scalartimes_perf8?
> One is made for blocksizes at least 8, and the other for blocksizes 1,2,4.
Ok, so perf8 corresponds to "at least 8". Thanks.
> Perf8 is a kind of explicit loop-unrolling, coded to greatly reduce the number
> of conditional jumps when looping a lot on tight loops. Conditional jumps are
> extremely slow on modern CPUs, and this affects if/else/for/do/while/switch as
> well as function pointers and virtual function calls.
But there aren't any conditionals inside the loop-- it's just multiplication operators.
> | Mathieu BOUCHARD ----- téléphone : +1.514.383.3801 ----- Montréal, QC
More information about the Pd-list