Xinok Sort - December 2011

Xinok xinok at live.com
Wed Nov 30 18:59:10 PST 2011


On 11/30/2011 8:45 PM, Andrej Mitrovic wrote:
> Add @property to front/back/popFront/popBack/empty/save.
>
> Also popFront/popBack need to be void return type.

Thanks. I was missing @property, the void return type was a mistake.

After fixing some bugs, the code is working but the benchmarks are 
terrible. >.< This is the benchmark compared to Phobos unstable sort:

phobUSortArray: 256939
phobUSortRange: 664792
xinokSortArray: 323069
xinokSortRange: 2401659


Also a new problem, this is the primary code for concurrent sorting. It 
compiles just fine in release builds, but it doesn't compile in debug 
builds:

// Start threading
auto th = task!(findRunsT)(arr[0..mid], temp[0..temp.length/2]);
taskPool.put(th);
findRunsT(arr[mid..arr.length], temp[temp.length/2..temp.length]);
th.workForce();
// End threading

The compiler prints lots of errors stating several members are not 
accessible, for example:

C:\D\dmd2\windows\bin\..\..\src\phobos\std\parallelism.d(491): Error: 
class std.parallelism.TaskPool member tryDeleteExecute is not accessible


More information about the Digitalmars-d-announce mailing list