]>
mj.ucw.cz Git - libucw.git/log
Martin Mares [Fri, 7 Sep 2007 14:45:50 +0000 (16:45 +0200)]
Improved heuristics for internal sorter capacity estimation.
Martin Mares [Fri, 7 Sep 2007 13:55:47 +0000 (15:55 +0200)]
A few improvements of sort-test.
Martin Mares [Fri, 7 Sep 2007 13:34:05 +0000 (15:34 +0200)]
Save cache misses by keeping a copy of the hash value next to the pointer.
This trades cache efficiency for extra memory, but it seems to be very well
worth it (e.g., graph sorting in sort-test is 8 times faster now).
Martin Mares [Fri, 7 Sep 2007 12:33:55 +0000 (14:33 +0200)]
Merge with git+ssh://cvs.ucw.cz/projects/sherlock/GIT/sherlock.git#dev-sorter
Martin Mares [Fri, 7 Sep 2007 12:33:45 +0000 (14:33 +0200)]
Added basic threading parameters.
Martin Mares [Fri, 7 Sep 2007 12:33:26 +0000 (14:33 +0200)]
Merge with git+ssh://git.ucw.cz/projects/sherlock/GIT/sherlock.git#dev-sorter
Martin Mares [Fri, 7 Sep 2007 12:31:37 +0000 (14:31 +0200)]
Added a debugging hack.
Martin Mares [Fri, 7 Sep 2007 12:29:34 +0000 (14:29 +0200)]
Introduced ARRAY_LONG_HASH and unrolled radix-sorting primitives.
Also tuned ASORT_RADIX_BITS for P4 Xeon (Sherlock3) -- the L1 cache is
so small there that it is better to tune radix-sort for L2 cache size.
Martin Mares [Fri, 7 Sep 2007 12:27:29 +0000 (14:27 +0200)]
Added numbering of tests.
Martin Mares [Fri, 7 Sep 2007 10:30:18 +0000 (12:30 +0200)]
Cleanup of array sorter interface and added quicksplit.
Martin Mares [Thu, 6 Sep 2007 20:00:10 +0000 (22:00 +0200)]
A few bits of commentary.
Martin Mares [Thu, 6 Sep 2007 19:27:31 +0000 (21:27 +0200)]
More bits of the array sorter: radix-sort implemented.
Martin Mares [Thu, 6 Sep 2007 19:26:49 +0000 (21:26 +0200)]
Fixed multi-way sorting with custom presorting.
Martin Mares [Thu, 6 Sep 2007 15:16:10 +0000 (17:16 +0200)]
Added a sketch of a new array sorter implementation.
The interface is already hopefully fixed, I am going to add the missing bits
of implementation soon.
Martin Mares [Thu, 6 Sep 2007 14:17:42 +0000 (16:17 +0200)]
Added a simple allocator for fixed-size objects.
Pavel Charvat [Thu, 6 Sep 2007 07:19:33 +0000 (09:19 +0200)]
Merge with git+ssh://git.ucw.cz/projects/sherlock/GIT/sherlock.git
Martin Mares [Wed, 5 Sep 2007 18:14:08 +0000 (20:14 +0200)]
Unified top-level Makefile with main-line.
Martin Mares [Wed, 5 Sep 2007 18:10:16 +0000 (20:10 +0200)]
We don't need this as 2-way merging is used rarely.
Pavel Charvat [Tue, 4 Sep 2007 16:42:04 +0000 (18:42 +0200)]
bugfix in the installer
Martin Mares [Fri, 31 Aug 2007 19:07:15 +0000 (21:07 +0200)]
New TODO notes.
Martin Mares [Fri, 31 Aug 2007 14:08:26 +0000 (16:08 +0200)]
A couple of things done.
Martin Mares [Fri, 31 Aug 2007 13:45:28 +0000 (15:45 +0200)]
Join in the rare case that presorting creates a single run, which is
not known in advance to be final.
Martin Mares [Fri, 31 Aug 2007 13:37:02 +0000 (15:37 +0200)]
Cleaned up joining logic and implemented joins in multi-way merges.
Martin Mares [Fri, 31 Aug 2007 12:57:49 +0000 (14:57 +0200)]
Added decision logic which switches between 2-way merges, n-way merges
and radix splits.
Martin Mares [Fri, 31 Aug 2007 11:42:50 +0000 (13:42 +0200)]
Merge with git+ssh://git.ucw.cz/projects/sherlock/GIT/sherlock.git#dev-sorter
Martin Mares [Fri, 31 Aug 2007 11:42:43 +0000 (13:42 +0200)]
The GCC bug (I hope I have ruled out all possibilities of a bug at my side)
turned out to bite even in GCC 4.2.1, so I have reported it and enabled
the workaround for all compiler versions.
Pavel Charvat [Fri, 31 Aug 2007 11:09:11 +0000 (13:09 +0200)]
Merge with git+ssh://git.ucw.cz/projects/sherlock/GIT/sherlock.git
Martin Mares [Fri, 31 Aug 2007 09:47:12 +0000 (11:47 +0200)]
Merge with git+ssh://git.ucw.cz/projects/sherlock/GIT/sherlock.git#dev-sorter
Martin Mares [Fri, 31 Aug 2007 09:46:44 +0000 (11:46 +0200)]
Better (and correct) handling of joins and empty buckets.
Martin Mares [Thu, 30 Aug 2007 09:58:00 +0000 (11:58 +0200)]
Cleanup and commentary.
Martin Mares [Thu, 30 Aug 2007 09:48:57 +0000 (11:48 +0200)]
Added a work-around for nasty GCC bug.
Martin Mares [Thu, 30 Aug 2007 09:37:14 +0000 (11:37 +0200)]
Yet another swap-out.
Martin Mares [Thu, 30 Aug 2007 08:00:35 +0000 (10:00 +0200)]
Fixed the yesterday's mysterious bug.
Martin Mares [Thu, 30 Aug 2007 08:00:20 +0000 (10:00 +0200)]
Presorting for multi-way merge should swap out the buckets.
Martin Mares [Wed, 29 Aug 2007 21:10:30 +0000 (23:10 +0200)]
So far buggy support for multi-way unification.
Martin Mares [Wed, 29 Aug 2007 21:10:13 +0000 (23:10 +0200)]
Fixed bug in error message.
Martin Mares [Wed, 29 Aug 2007 21:09:52 +0000 (23:09 +0200)]
Merge with git+ssh://cvs.ucw.cz/projects/sherlock/GIT/sherlock.git#dev-sorter
Martin Mares [Wed, 29 Aug 2007 21:09:48 +0000 (23:09 +0200)]
Fixed a bug.
Martin Mares [Wed, 29 Aug 2007 20:47:37 +0000 (22:47 +0200)]
Added options for gcc 4.2.x.
Pavel Charvat [Wed, 29 Aug 2007 18:20:56 +0000 (20:20 +0200)]
Bugfix in keywords module -- fb-dir does not support appending to an
unaligned file.
Martin Mares [Wed, 29 Aug 2007 14:04:14 +0000 (16:04 +0200)]
format_size() no longer exists.
Martin Mares [Wed, 29 Aug 2007 13:25:36 +0000 (15:25 +0200)]
Multi-way merges work fine in simple cases.
I am going to give them a try on large data to see if they are viable.
Martin Mares [Sat, 25 Aug 2007 18:49:17 +0000 (20:49 +0200)]
Setting of LIBS is no longer necessary.
Martin Mares [Sat, 25 Aug 2007 18:41:01 +0000 (20:41 +0200)]
Updated TODO.
Martin Mares [Sat, 25 Aug 2007 14:27:39 +0000 (16:27 +0200)]
Dependencies of test programs are no longer hard-wired in the rules.
Martin Mares [Sat, 25 Aug 2007 14:19:16 +0000 (16:19 +0200)]
Cosmetics.
Martin Mares [Sat, 25 Aug 2007 14:19:01 +0000 (16:19 +0200)]
Shared file handles now use is_temp_file == 2 instead of -1
to avoid collisions with negative return values of bconfig()
meaning "not supported".
Martin Mares [Sat, 25 Aug 2007 14:15:08 +0000 (16:15 +0200)]
Cleanup of file fastbufs.
o Common parts of close code moved to bclose_file_helper().
o Compatibility wrappers moved to fb-param.c.
o Everything related to temp files moved to fb-temp.c.
o Several byte -> char conversions.
o Better comments.
o Testing code compiles again.
Martin Mares [Sat, 25 Aug 2007 11:56:18 +0000 (13:56 +0200)]
bopen_tmp_file(NULL) works.
Martin Mares [Sat, 25 Aug 2007 11:38:23 +0000 (13:38 +0200)]
Use bfix_tmp_file() whereever possible.
Martin Mares [Sat, 25 Aug 2007 11:36:22 +0000 (13:36 +0200)]
Implemented bfix_tmp_file(), which turns a temporary file fastbuf
to a permanent one.
Martin Mares [Sat, 25 Aug 2007 11:14:15 +0000 (13:14 +0200)]
Let bconfig() return the original value.
Martin Mares [Sat, 25 Aug 2007 10:57:02 +0000 (12:57 +0200)]
Removed obsolete comment.
Martin Mares [Sat, 25 Aug 2007 10:43:56 +0000 (12:43 +0200)]
Fixed a typo.
Martin Mares [Sat, 25 Aug 2007 10:19:50 +0000 (12:19 +0200)]
LIBUCW needs to be declared early, because it is used by sub-Makefiles.
Martin Mares [Sat, 25 Aug 2007 10:08:53 +0000 (12:08 +0200)]
Merge with git+ssh://git.ucw.cz/projects/sherlock/GIT/sherlock.git
Hand-merged:
debug/Makefile
lib/Makefile
gather/shepherd/shep-select.c
Martin Mares [Fri, 24 Aug 2007 12:32:16 +0000 (14:32 +0200)]
Merge with git+ssh://cvs.ucw.cz/projects/sherlock/GIT/sherlock.git
Martin Mares [Thu, 26 Jul 2007 10:11:30 +0000 (12:11 +0200)]
Shell utilities should link with libucw, not libsh.
Martin Mares [Thu, 26 Jul 2007 09:50:57 +0000 (11:50 +0200)]
Commented more libucw configuration switches.
Martin Mares [Thu, 26 Jul 2007 09:50:44 +0000 (11:50 +0200)]
Use lib/default.cfg and get the version string from there.
Avoid sherlock/autoconf.cfg.
Martin Mares [Thu, 26 Jul 2007 09:46:54 +0000 (11:46 +0200)]
Moved default settings of the UCW library to a separate config file.
This config file also contains the master version number.
Martin Mares [Thu, 26 Jul 2007 09:39:22 +0000 (11:39 +0200)]
Renamed both instances of `defconfig' to `default.cfg' to keep the names
in line with the rest of the configuration files.
Martin Mares [Thu, 26 Jul 2007 09:35:02 +0000 (11:35 +0200)]
Mention doc/configure.
Martin Mares [Thu, 26 Jul 2007 09:24:58 +0000 (11:24 +0200)]
Updated documentation on using libraries.
Martin Mares [Thu, 26 Jul 2007 09:18:24 +0000 (11:18 +0200)]
Moved the tests of linking with Sherlock libraries to free/libs/examples/.
Martin Mares [Thu, 26 Jul 2007 09:05:33 +0000 (11:05 +0200)]
The separate library distribution now compiles.
Martin Mares [Thu, 26 Jul 2007 09:04:54 +0000 (11:04 +0200)]
Moved the rule for cf/library to lib/Makefile and the default empty
rule for extras to build/Maketop.
Martin Mares [Wed, 25 Jul 2007 21:37:45 +0000 (23:37 +0200)]
An unfinished experiment in making a separate release of all libraries.
Martin Mares [Wed, 25 Jul 2007 21:05:53 +0000 (23:05 +0200)]
Comments must not be indented, otherwise they are passed to the shell.
Pavel Charvat [Wed, 25 Jul 2007 11:06:58 +0000 (13:06 +0200)]
Merge with git+ssh://git.ucw.cz/projects/sherlock/GIT/sherlock.git
Martin Mares [Fri, 20 Jul 2007 15:24:15 +0000 (17:24 +0200)]
Comment on optionality of UCW::CGI::error_hook.
Martin Mares [Fri, 20 Jul 2007 15:10:24 +0000 (17:10 +0200)]
Got rid of some more hidden references to Sherlock namespace in our modules.
(This was obscured by the configure system bug which caused the modules
not to be built at all.)
Martin Mares [Fri, 20 Jul 2007 15:01:04 +0000 (17:01 +0200)]
Last bits of the CGI.pm move.
Martin Mares [Fri, 20 Jul 2007 14:36:48 +0000 (16:36 +0200)]
CGI: Added error handling and strictness.
Martin Mares [Fri, 20 Jul 2007 14:35:45 +0000 (16:35 +0200)]
CGI: Added parsing of multi-part POSTed forms (file uploads etc.)
In addition to that, we accept parameters listed in URL not only for
GET requests, but also for POSTs.
Martin Mares [Fri, 20 Jul 2007 14:33:26 +0000 (16:33 +0200)]
CGI: Added "multiline" flag, which allows newline in parameter values.
Martin Mares [Fri, 20 Jul 2007 14:32:17 +0000 (16:32 +0200)]
CGI: Added url_param_escape() which writes spaces as "+".
Use this function when genering self-ref URLs to save URL space.
Martin Mares [Fri, 20 Jul 2007 14:30:10 +0000 (16:30 +0200)]
CGI: make_out_args() handles undefs correctly.
Martin Mares [Fri, 20 Jul 2007 14:28:35 +0000 (16:28 +0200)]
CGI: Added functions for parsing of HTTP headers.
Martin Mares [Fri, 20 Jul 2007 14:27:07 +0000 (16:27 +0200)]
CGI: Added functions for cookies.
Martin Mares [Fri, 20 Jul 2007 14:21:56 +0000 (16:21 +0200)]
Moved CGI.pm to UCW namespace.
Martin Mares [Fri, 20 Jul 2007 12:43:09 +0000 (14:43 +0200)]
Some Perl modules have moved to UCW namespace.
Martin Mares [Fri, 20 Jul 2007 12:42:26 +0000 (14:42 +0200)]
Split Perl modules to Sherlock and UCW namespaces as we already do with C libraries.
Pavel Charvat [Fri, 20 Jul 2007 08:54:25 +0000 (10:54 +0200)]
Makefile: fixed compilation of tests
Pavel Charvat [Thu, 19 Jul 2007 20:09:13 +0000 (22:09 +0200)]
Merge with git+ssh://git.ucw.cz/projects/sherlock/GIT/sherlock.git
Martin Mares [Thu, 19 Jul 2007 11:58:23 +0000 (13:58 +0200)]
Merge with git+ssh://cvs.ucw.cz/projects/sherlock/GIT/sherlock.git
Merged with the dev-make branch. Lo and behold, new makefiles are there!
Pavel Charvat [Thu, 19 Jul 2007 11:48:47 +0000 (13:48 +0200)]
libucw: removed utf8_check routine... it did not check correct UTF-8
anyway, only a subset
Martin Mares [Thu, 19 Jul 2007 11:03:46 +0000 (13:03 +0200)]
`make clean' no longer unconfigures the package, it only deletes
all object files.
This fulfils an old wish by Tom Valla.
Martin Mares [Thu, 19 Jul 2007 11:01:04 +0000 (13:01 +0200)]
Moved autoconf.h from obj/lib to obj.
It is not specific to libucw (although it is currently included from
lib/config.h, it makes sense to use the configuration mechanism without
the rest of libucw) and, more importantly, it allows us to distinguish
between cleaning object files and unconfiguring the package.
Martin Mares [Thu, 19 Jul 2007 10:53:49 +0000 (12:53 +0200)]
Simplified clean targets.
Martin Mares [Thu, 19 Jul 2007 10:41:37 +0000 (12:41 +0200)]
autoconf.h needs to be handled differently, since it is copied from obj/lib
instead of src/lib.
The public API works again.
Martin Mares [Thu, 19 Jul 2007 09:32:04 +0000 (11:32 +0200)]
Unfortunately, libraries with public API need an extra rule for their .pc.
Martin Mares [Wed, 18 Jul 2007 21:21:22 +0000 (23:21 +0200)]
Set `s' and `o' variables in configure.
This helps us avoid explicit references to SRCDIR in the top-level Makefile.
Martin Mares [Wed, 18 Jul 2007 19:59:32 +0000 (21:59 +0200)]
Use msg() instead of log().
Martin Mares [Wed, 18 Jul 2007 19:59:17 +0000 (21:59 +0200)]
Removed another bunch of unneeded dependencies on sherlock/sherlock.h.
Martin Mares [Wed, 18 Jul 2007 19:57:07 +0000 (21:57 +0200)]
Removed unnecessary depedencies on sherlock/sherlock.h.
Martin Mares [Wed, 18 Jul 2007 19:43:30 +0000 (21:43 +0200)]
Some of the directories in run/ hierarchy are not dependent on Sherlock.
Martin Mares [Wed, 18 Jul 2007 19:43:08 +0000 (21:43 +0200)]
Fixed const qualifiers in regex library.
(The wrong ones were used in non-default compilation modes.)
Martin Mares [Wed, 18 Jul 2007 14:20:58 +0000 (16:20 +0200)]
Split the top-level Makefile to three parts.
Maketop and Makebottom contain the generic parts, which are useful for
other projects as well, while Makefile includes them and contains the
parts specific for Sherlock.
Martin Mares [Wed, 18 Jul 2007 13:56:27 +0000 (15:56 +0200)]
Merge with git+ssh://cvs.ucw.cz/projects/sherlock/GIT/sherlock.git#dev-make