]>
mj.ucw.cz Git - libucw.git/log
Pavel Charvat [Mon, 10 Dec 2007 09:41:04 +0000 (10:41 +0100)]
Merge with git+ssh://git.ucw.cz/projects/sherlock/GIT/sherlock.git
Pavel Charvat [Mon, 10 Dec 2007 09:40:08 +0000 (10:40 +0100)]
XML: Backuped incomplete XML parser. Changes mostly from friday.
Pavel Charvat [Mon, 10 Dec 2007 09:39:17 +0000 (10:39 +0100)]
UCW: Added inlined functions for reading/writing of UTF-16.
Pavel Charvat [Wed, 5 Dec 2007 09:33:05 +0000 (10:33 +0100)]
HashTables:
The allocator should be initialized before we make the initial array allocation.
Pavel Charvat [Wed, 5 Dec 2007 07:31:46 +0000 (08:31 +0100)]
XML: Backuped unfinished XML parser.
Martin Mares [Wed, 28 Nov 2007 08:28:50 +0000 (09:28 +0100)]
Branched off v3.12.1.
Pavel Charvat [Fri, 23 Nov 2007 12:15:31 +0000 (13:15 +0100)]
Merge with git+ssh://git.ucw.cz/projects/sherlock/GIT/sherlock.git
Pavel Charvat [Fri, 23 Nov 2007 12:15:18 +0000 (13:15 +0100)]
MergeImages: Just small improvements.
Pavel Charvat [Fri, 23 Nov 2007 09:58:03 +0000 (10:58 +0100)]
sanitize_char(): Allowed tabulators.
Pavel Charvat [Fri, 23 Nov 2007 09:40:51 +0000 (10:40 +0100)]
Added a missing "inline" keyword.
Pavel Charvat [Fri, 23 Nov 2007 09:38:03 +0000 (10:38 +0100)]
ucwlib: Added a function for checking "regular" unicode values.
Pavel Charvat [Thu, 22 Nov 2007 13:31:21 +0000 (14:31 +0100)]
MergeImages: Added several config options.
Pavel Charvat [Mon, 19 Nov 2007 16:03:24 +0000 (17:03 +0100)]
Merge with git+ssh://git.ucw.cz/projects/sherlock/GIT/sherlock.git
Pavel Charvat [Mon, 19 Nov 2007 16:03:12 +0000 (17:03 +0100)]
Just backuped unfinished detector of image duplicates.
Martin Mares [Mon, 19 Nov 2007 08:17:03 +0000 (09:17 +0100)]
Simplify temporary file deletion in the tester.
The advantage of doing a wildcard rm instead of deleting the files
individually is that you can use $n for temporary files, which are
not mentioned as explicit inputs or outputs in the test case.
Martin Mares [Sun, 18 Nov 2007 19:00:34 +0000 (20:00 +0100)]
Let the tester create its tmp directory if it doesn't exist.
Martin Mares [Sun, 18 Nov 2007 18:35:09 +0000 (19:35 +0100)]
Name test cases in the longest suites.
Martin Mares [Sun, 18 Nov 2007 18:33:08 +0000 (19:33 +0100)]
A new unit test module.
Explicit input and output files can be defined now, the expected
exit code of the process can be set and, last but not least, test
cases can be named to simplify orientation in long test suites.
The `run' directory is no longer hard-wired, the tester now accepts
--verbose and --rundir switches.
The makefiles now pass --rundir=run and also $TESTERFLAGS, allowing
to turn on the verbose mode at request.
Pavel Charvat [Wed, 14 Nov 2007 12:16:55 +0000 (13:16 +0100)]
Backuped experiments with image duplicates.
Pavel Charvat [Wed, 7 Nov 2007 15:12:22 +0000 (16:12 +0100)]
images: Fixed trailing spaces and invalid indentation.
Pavel Charvat [Tue, 6 Nov 2007 09:02:05 +0000 (10:02 +0100)]
Merge with git+ssh://git.ucw.cz/projects/sherlock/GIT/sherlock.git
Martin Mares [Mon, 29 Oct 2007 22:29:03 +0000 (23:29 +0100)]
Mainline has set forth towards v3.13.
Martin Mares [Mon, 29 Oct 2007 22:24:39 +0000 (23:24 +0100)]
Set TESTING_DEPS in the example customization, so that `make tests' works.
Pavel Charvat [Mon, 29 Oct 2007 14:03:27 +0000 (15:03 +0100)]
Perform threaded imagelib tests only with CONFIG_UCW_THREADS.
Pavel Charvat [Mon, 29 Oct 2007 12:13:10 +0000 (13:13 +0100)]
Allow direct I/O parametrized fastbufs only with CONFIG_UCW_THREADS
enabled, otherwise die with an error.
Pavel Charvat [Mon, 29 Oct 2007 12:03:38 +0000 (13:03 +0100)]
fixed the compilation of parametrized fastbufs with disabled CONFIG_UCW_THREADS
Pavel Charvat [Sun, 28 Oct 2007 20:32:12 +0000 (21:32 +0100)]
Merge with git+ssh://git.ucw.cz/projects/sherlock/GIT/sherlock.git#v3.11
Martin Mares [Thu, 18 Oct 2007 12:57:39 +0000 (14:57 +0200)]
No need to report negative sorter speeds.
Daniel Fiala [Tue, 16 Oct 2007 08:31:50 +0000 (10:31 +0200)]
Patrik needs lib/binsearch.h in the library package.
Pavel Charvat [Sun, 14 Oct 2007 14:50:05 +0000 (16:50 +0200)]
get rid of the 'register' keyword
Pavel Charvat [Thu, 27 Sep 2007 08:47:21 +0000 (10:47 +0200)]
ucwlib: default.cfg should return success
Pavel Charvat [Thu, 27 Sep 2007 07:48:16 +0000 (09:48 +0200)]
ucwlib: unset DEFAULT_CONFIG and ENV_VAR_CONFIG by default
Pavel Charvat [Thu, 27 Sep 2007 04:54:16 +0000 (06:54 +0200)]
Merge with git+ssh://git.ucw.cz/projects/sherlock/GIT/sherlock.git
Pavel Charvat [Thu, 27 Sep 2007 04:53:50 +0000 (06:53 +0200)]
sorter: fixed the previous bugfix... all tests now pass
Pavel Charvat [Thu, 27 Sep 2007 04:43:44 +0000 (06:43 +0200)]
Merge with git+ssh://git.ucw.cz/projects/sherlock/GIT/sherlock.git
Pavel Charvat [Thu, 27 Sep 2007 04:43:33 +0000 (06:43 +0200)]
sorter: fixed buffer allocation in s-internal, the workspace was too small
Martin Mares [Wed, 26 Sep 2007 09:26:57 +0000 (11:26 +0200)]
Merge with git+ssh://cvs.ucw.cz/projects/sherlock/GIT/sherlock.git
Pavel Charvat [Wed, 26 Sep 2007 07:06:09 +0000 (09:06 +0200)]
fixed bug in bugfix :-)
Pavel Charvat [Wed, 26 Sep 2007 07:04:22 +0000 (09:04 +0200)]
Fixed buggy switching of buffers in the internal sorter.
Pavel Charvat [Wed, 26 Sep 2007 06:53:43 +0000 (08:53 +0200)]
Fixed a bug in fixint sorter.
Pavel Charvat [Fri, 21 Sep 2007 14:13:25 +0000 (16:13 +0200)]
Merge with git+ssh://git.ucw.cz/projects/sherlock/GIT/sherlock.git
Martin Mares [Fri, 21 Sep 2007 10:10:30 +0000 (12:10 +0200)]
Fixed a typo.
Martin Mares [Fri, 21 Sep 2007 09:15:56 +0000 (11:15 +0200)]
The graph tests are able to generate empty input now.
Pavel Charvat [Fri, 21 Sep 2007 09:15:46 +0000 (11:15 +0200)]
Merge with git+ssh://git.ucw.cz/projects/sherlock/GIT/sherlock.git
Martin Mares [Fri, 21 Sep 2007 09:14:55 +0000 (11:14 +0200)]
Do not die on ASSERT when sorting an empty input with custom presorter.
We have test that not only the join bucket is available, but that the join
has actually happened, because custom presorters do not implement automatic
joining.
Pavel Charvat [Fri, 21 Sep 2007 07:43:46 +0000 (09:43 +0200)]
Merge with git+ssh://git.ucw.cz/projects/sherlock/GIT/sherlock.git
Martin Mares [Thu, 20 Sep 2007 17:48:30 +0000 (19:48 +0200)]
Added a very brief introduction to ASIO.
Martin Mares [Thu, 20 Sep 2007 17:32:21 +0000 (19:32 +0200)]
Added copyright messages.
Martin Mares [Thu, 20 Sep 2007 17:01:37 +0000 (19:01 +0200)]
Documented the changes in dev-sorter.
Martin Mares [Thu, 20 Sep 2007 16:14:54 +0000 (18:14 +0200)]
Polished the introductory comments in sorter.h.
Martin Mares [Wed, 19 Sep 2007 21:41:07 +0000 (23:41 +0200)]
Fix the swapping bug, this time correctly.
Martin Mares [Wed, 19 Sep 2007 21:18:27 +0000 (23:18 +0200)]
Merge with git+ssh://git.ucw.cz/projects/sherlock/GIT/sherlock.git#dev-sorter
Martin Mares [Wed, 19 Sep 2007 21:18:10 +0000 (23:18 +0200)]
Fixed a bug in s-internal, which caused it to write bogus records
when the array sorter decided to swap buffers.
Martin Mares [Mon, 17 Sep 2007 20:06:05 +0000 (22:06 +0200)]
Honor SORT_DEBUG_KEEP_BUCKETS when swapping in a bucket.
Martin Mares [Mon, 17 Sep 2007 20:04:17 +0000 (22:04 +0200)]
Print item counts as %u's.
Martin Mares [Mon, 17 Sep 2007 19:39:02 +0000 (21:39 +0200)]
Array sorter thresholds are now configured as 64-bit numbers of bytes,
but they are recalculated to the number of elements internally with
proper clamping to ~0U.
Martin Mares [Mon, 17 Sep 2007 19:28:31 +0000 (21:28 +0200)]
Removed a reference to the old sorter.
Martin Mares [Sun, 16 Sep 2007 20:30:52 +0000 (22:30 +0200)]
Added another note.
Martin Mares [Sun, 16 Sep 2007 20:16:34 +0000 (22:16 +0200)]
Merge with git+ssh://git.ucw.cz/projects/sherlock/GIT/sherlock.git#dev-sorter
Martin Mares [Sun, 16 Sep 2007 20:16:21 +0000 (22:16 +0200)]
Fixed a silly bug in the parallel radix-sorter.
Pavel Charvat [Fri, 14 Sep 2007 07:21:01 +0000 (09:21 +0200)]
fixed a memory leak
Pavel Charvat [Fri, 14 Sep 2007 07:16:42 +0000 (09:16 +0200)]
removed a traling whitespace
Martin Mares [Tue, 11 Sep 2007 17:00:43 +0000 (19:00 +0200)]
Fixed a nasty bug in the threaded radix-sorter.
Martin Mares [Tue, 11 Sep 2007 16:59:42 +0000 (18:59 +0200)]
Use large thread stack.
Martin Mares [Tue, 11 Sep 2007 16:59:29 +0000 (18:59 +0200)]
Adjust thread stack size according to radix sorter parameters.
Martin Mares [Tue, 11 Sep 2007 16:26:03 +0000 (18:26 +0200)]
Cleaned up tracing levels. Array sorter now has its own control knob.
Martin Mares [Tue, 11 Sep 2007 16:01:48 +0000 (18:01 +0200)]
Use a different file access method for small inputs.
Martin Mares [Tue, 11 Sep 2007 15:49:19 +0000 (17:49 +0200)]
Made terminology of the parallel radix-sort consistent with the sequential one.
Martin Mares [Tue, 11 Sep 2007 14:04:04 +0000 (16:04 +0200)]
Intelligent switching of radix-sort buffers.
Martin Mares [Tue, 11 Sep 2007 13:38:24 +0000 (15:38 +0200)]
Do not make retros by default, since it does not compile on all CPU's
(it uses SSE intrinsics).
Martin Mares [Tue, 11 Sep 2007 13:26:48 +0000 (15:26 +0200)]
Auto-tune radix-sort width according to CPU type.
Martin Mares [Tue, 11 Sep 2007 13:17:38 +0000 (15:17 +0200)]
Sweeping over TODO.
Martin Mares [Tue, 11 Sep 2007 12:49:31 +0000 (14:49 +0200)]
Another minor optimization: Added AddRadixBits.
Martin Mares [Tue, 11 Sep 2007 12:07:42 +0000 (14:07 +0200)]
Yet another sorter tuning utility.
Martin Mares [Mon, 10 Sep 2007 19:00:35 +0000 (21:00 +0200)]
Oops, some typos have crept in.
Martin Mares [Mon, 10 Sep 2007 18:55:23 +0000 (20:55 +0200)]
Redefined RadixThreshold to bound the array size instead of the number
of elements -- the switching point seems to be related more to cache
effects than decision performance.
Martin Mares [Mon, 10 Sep 2007 18:05:10 +0000 (20:05 +0200)]
Rewritten handling of small chunks in the parallel radix-sorter.
They are now immediately submitted to the worker thread instead of keeping
them in a list of delayed chunks for the whole course of the algorithm.
This avoids memory usage explosions caused by queueing lots of smallish
chunks. We prefer to wait for the small chunks to complete before starting
the next large chunk.
Martin Mares [Mon, 10 Sep 2007 18:03:27 +0000 (20:03 +0200)]
Let eltpools maintain the number of allocated items. The overhead
is minimal and it helps debugging.
Martin Mares [Mon, 10 Sep 2007 17:47:03 +0000 (19:47 +0200)]
Implemented ThreadChunk limit.
Martin Mares [Mon, 10 Sep 2007 17:31:00 +0000 (19:31 +0200)]
Made radix-sorting threshold configurable and let radix-tune-bits
help find the optimum.
Martin Mares [Mon, 10 Sep 2007 15:18:52 +0000 (17:18 +0200)]
Fixed several bugs in swapping of buffers in the threaded radix-sorter,
which caused it to malfunction with some bit widths.
Martin Mares [Mon, 10 Sep 2007 15:18:02 +0000 (17:18 +0200)]
Added a simple utility for tuning the radix-sorter width.
Martin Mares [Mon, 10 Sep 2007 15:17:38 +0000 (17:17 +0200)]
A subset of tests can be requested now. Also, the radix sort width
can be overridden by making with `CEXTRA="-DFORCE_RADIX_BITS=n"'.
Martin Mares [Mon, 10 Sep 2007 15:16:39 +0000 (17:16 +0200)]
Radix sort bit width is now controlled by the configure script.
Martin Mares [Mon, 10 Sep 2007 15:14:50 +0000 (17:14 +0200)]
Fixed a typo in usage text.
Martin Mares [Mon, 10 Sep 2007 15:14:24 +0000 (17:14 +0200)]
Added CEXTRA and LEXTRA, which can be used to add new compilation/linking
flags without removing the original ones.
Martin Mares [Mon, 10 Sep 2007 11:40:44 +0000 (13:40 +0200)]
We want to keep the results of retros benchmarking, but the rest of BENCH
is obsolete.
Martin Mares [Mon, 10 Sep 2007 11:38:43 +0000 (13:38 +0200)]
Slightly improved user interface of {asio,file}-test and renamed them
to radix-*.
Martin Mares [Sat, 8 Sep 2007 20:53:46 +0000 (22:53 +0200)]
Removed sorter_presort_bufsize, it was no longer used.
Martin Mares [Sat, 8 Sep 2007 20:49:54 +0000 (22:49 +0200)]
Clean up #undef's.
Martin Mares [Sat, 8 Sep 2007 20:40:29 +0000 (22:40 +0200)]
Explain why we don't need the join hack for custom presorting.
Martin Mares [Sat, 8 Sep 2007 18:25:00 +0000 (20:25 +0200)]
Convert the most important users of arraysort.h to sorter/array.h.
So far, I didn't have used radix-sorting, because I want to save memory,
but if any of these sorters will turn up on the profiles, I will convert it
later.
Martin Mares [Sat, 8 Sep 2007 17:51:30 +0000 (19:51 +0200)]
Changed the interface of the array sorter: the buffer and hash_bits parameters
are passed only if hashing is enabled.
Martin Mares [Sat, 8 Sep 2007 14:35:50 +0000 (16:35 +0200)]
Moved the last few relevant NOTES to TODO.
Martin Mares [Sat, 8 Sep 2007 14:28:23 +0000 (16:28 +0200)]
Install API of the new sorter.
I had to get rid of the $(?F) construct, because did not work with includes
in subdirectories (like sorter has). I have replaced it by a direct reference
to the include list macro, which also allows to add the missing dependency
on autoconf.h.
Martin Mares [Sat, 8 Sep 2007 14:20:16 +0000 (16:20 +0200)]
The old sorter is gone.
Martin Mares [Sat, 8 Sep 2007 14:07:59 +0000 (16:07 +0200)]
Cleanup FIXME's.
Martin Mares [Fri, 7 Sep 2007 17:15:36 +0000 (19:15 +0200)]
Shaved off a couple of items from the TODO.
Martin Mares [Fri, 7 Sep 2007 17:03:04 +0000 (19:03 +0200)]
Both quicksort and radix-sort can be parallelized to multiple threads now.
Martin Mares [Fri, 7 Sep 2007 14:45:50 +0000 (16:45 +0200)]
Improved heuristics for internal sorter capacity estimation.