103 Commits

Author SHA1 Message Date
Richard Thier
6426560519 outliersort ideas 2023-07-20 23:28:52 +02:00
Richard Thier
0521ddd52d added neargoodsort idea (and some merge space optimization ideas that I think are known) 2023-07-20 21:09:57 +02:00
e3c229337c debug 2023-07-02 15:56:21 +02:00
Richard Thier
1c32648026 wip: debugging - should be reverted? 2023-07-02 13:33:27 +02:00
Richard Thier
259ae1e540 debug log for differences - I found nearby each elements to differ in this test! 2023-07-01 06:48:38 +02:00
Richard Thier
880fb7e991 with -g it seems there is some error actually... 2023-07-01 06:37:20 +02:00
Richard Thier
4436c79821 quicksort pivoting strategy changes when slowdown is recognized (works well against worst cases) 2023-07-01 06:06:30 +02:00
Richard Thier
83c79f4832 quicksort optimization to avoid const worstcase 2023-07-01 05:52:51 +02:00
Richard Thier
f7c025c0dd 100k test case 2023-07-01 05:01:00 +02:00
Richard Thier
c05e484ea0 interestingly the code I marked "rotten" might actually work lol 2023-07-01 04:53:42 +02:00
Richard Thier
4ad1c8b820 tested new thier and thier-qs and seems to work it looks like - constant is really slow because its the worst case for both (should be special-cased in my quicksort) 2023-07-01 04:50:32 +02:00
Richard Thier
c47e8a133d added more regular quicksort as a separate file - still trying to prefer ours.. 2023-07-01 04:35:52 +02:00
Richard Thier
5df76664bb fixes to thiersort_apply - not sure actually but promising 2023-07-01 04:34:59 +02:00
Richard Thier
873c17f658 inplace quicksort fixes - but thier_apply seems like not doing anything? 2023-07-01 03:48:42 +02:00
Richard Thier
79b95bf905 various bugs 2023-06-30 22:06:24 +02:00
Richard Thier
58176a89b6 thiersort apply fixes, my own qsort added to the algs, quicksort_fromto fix; thier still buggy on random data - but others seem to get handled by its quicksorts under the hood... 2023-06-30 18:00:44 +02:00
Richard Thier
9ac3a76209 more info for thiersort testing - seems like apply maybe has a bug 2023-06-30 17:00:37 +02:00
Richard Thier
36189e8a3c hopefully fixing internal quicksorts? 2023-06-30 16:39:56 +02:00
Richard Thier
96e9fb4440 add thiersort for testing - all kinds of crashes for now 2023-06-30 16:39:33 +02:00
88a8e87418 thiersort compile errors 2023-05-02 13:20:07 +02:00
8dd103ca54 apply and prepare operations - first version 2023-04-29 19:14:03 +02:00
8784773800 uint32 ->TSU32; prepare, apply skeleton 2023-04-18 19:11:27 +02:00
3a2f2d326b better float trickery 2023-04-18 18:45:56 +02:00
fc3f4d5cfe add struct and union at usages for C 2023-04-18 16:33:08 +02:00
4e24903b18 quicksort was buggy lol 2023-04-18 16:22:01 +02:00
Richard Thier
4c0e79e173 add missing reent_data; finish quicksort - untested 2023-04-11 05:01:51 +02:00
23ec64bf14 fl8test.c for quessing when groups change for thier 2023-04-10 20:04:46 +02:00
a7693c81bc quicksort for thier 2023-04-10 20:04:02 +02:00
Richard Thier
f84f6fc398 ILP comment (idea) for occurence countin' 2023-04-09 23:46:47 +02:00
Richard Thier
3c0b2d5202 thiersort non-SSE implementation, but missing quicksort at end 2023-04-09 23:13:16 +02:00
caa3aecaad thier progress 2023-04-09 20:21:51 +02:00
Richard Thier
22d6631e24 added thiersort idea, measure magyar_bucket 1&2 2023-04-09 17:20:58 +02:00
Richard Thier
50b1997d5c little optimization to gpts and mine space partition bucket sort 2022-12-10 11:04:53 +01:00
Richard Thier
7e21807668 added gpt_bucket_sort made with conversing with chatGPT (GPT3 online chat) and added the chat as txt file too with prompts and how it was developed. There were multiple errors, but was interesting 2022-12-10 03:13:16 +01:00
Richard Thier
57e328897a added int_to_float.h as might be needed in future for new sort alg idea 2022-10-10 19:56:55 +02:00
Richard Thier
d0843cbc40 Revert "trying with the restrict keyword - unsuccessful"
This reverts commit 1908687002c085c628853711d26b95e9bc92a1ad.
2022-09-01 02:15:43 +02:00
Richard Thier
1908687002 trying with the restrict keyword - unsuccessful 2022-09-01 02:14:30 +02:00
Richard Thier
5831527f9d removed vectorize makefile part example 2022-09-01 01:56:40 +02:00
Richard Thier
7e8aa96a39 duplication counting, word-based radix made possible (commented out), modulus impuit, vectorize makefile example 2022-09-01 01:56:15 +02:00
Richard Thier
c02aa49f73 tweaked to have better MEASURE_ONLY 2022-08-31 12:56:51 +02:00
Richard Thier
dac044fe91 Revert "trying more ILP in spsort - not much success and will be reverted"
This reverts commit c7e794b7ea1e10f25e64ba29f740890f3aa93b0a.
2022-08-16 19:24:35 +02:00
Richard Thier
c7e794b7ea trying more ILP in spsort - not much success and will be reverted 2022-08-16 19:24:27 +02:00
Richard Thier
f8793f71ab more ILP in some nearly sorted bucket parts in spsort - rand still not good so much 2022-08-16 18:59:18 +02:00
Richard Thier
4bed99751f added feature to use profilers with algorithms more easily 2022-08-16 18:37:13 +02:00
Richard Thier
36ea38940b in-place algorithm and fix of perf bug where we not early exited in spsort after insertion sorting small buckets so they were sorted again by us too :-) 2022-08-16 18:06:46 +02:00
Richard Thier
b1ab4f2f87 tested sp sort and works the first version. Slightly slower on random than std and sometimes slightly faster - but this version do copies that I should optimize out! 2022-08-16 16:00:02 +02:00
Richard Thier
edbb59d7a1 spsort got twovalue sort special case (no infinite recursion) 2022-08-16 15:50:36 +02:00
Richard Thier
6a0a2540bb re-add other test cases - now fails constant because infinite recursion to be fixed for spsort 2022-08-16 12:41:19 +02:00
Richard Thier
d0fa5c5b48 simplification + fixing right side of array not sorted because -1 counts 2022-08-16 12:25:15 +02:00
Richard Thier
6073c03f81 temporarily do naive array separate code for debugging 2022-08-16 12:16:31 +02:00