Project

General

Profile

Revision:

Revisions

# Date Author Comment
c2405714 02/24/2017 06:49 PM David Sorber

Adding header file that I forgot to add last time around. I also finished up a multithreaded version of the make random nodes script that can create 1 million nodes in ~20 seconds.

095cc187 02/23/2017 08:58 PM David Sorber

Adding preliminary code for making random nodes.

43c9a095 02/22/2017 01:06 AM David Sorber

Fixing the bug I discovered yesterday... I meant to use rfind() instead of find(). I should be ready for another full test.

c8352650 02/21/2017 10:56 PM David Sorber

WIP commit, stashing these debugging changes so I can go mobile.

57e6c22f 02/21/2017 10:19 PM David Sorber

Finished up the changes to make argv a std::vector instead of a regular array. I also implemented the changes to control the size of argv based on system configuration and potentially spawn packJPG multiple times in order to handle a very large number of files. I ran a test on my Photos library and it sort of worked but I ran into some issues that I still need to diagnose.

e0b7f8b9 02/20/2017 12:56 AM David Sorber

WIP commit. I started converting the argv list to a std::vector and adding logic to make sure it does not exceed the maximum argv size.

08cef8d6 02/18/2017 08:42 PM David Sorber

Adding initial CMakeLists.txt. This version only builds PCA, it does not (yet) build packJPG as a subproject.

cd283ecd 02/18/2017 08:33 PM David Sorber

Removing accidentally added object file and adding a .gitignore file to prevent me from accidentally adding another one in the future.

0c2e61fd 02/18/2017 08:29 PM David Sorber

Adding an optimized version of the packJPG source to the source tree for this utility since it is entirely dependent on packJPG. I started to modify the Makefile but really I shoud just use CMake. I'll work on that next.

cec188e4 02/16/2017 09:45 PM David Sorber

Adding some minor edits along with a bit of debug code.

328d0fa5 02/11/2017 10:58 PM David Sorber

Adding proper option parsing and some general improvements. I've added an option for decompression but I still need to implement it.

4f833a04 02/09/2017 12:00 AM David Sorber

A tiny bit of cleanup from my previous commit...

f8e600bc 02/08/2017 11:51 PM David Sorber

I figured out a somewhat silly, but highly effective way do progress reporting. The basic idea is that we know the output file names and the exact order in which they will appear. Therefore if output X+1 exists on the file system it means that output X is already complete. Now the worker thread polls the file system waiting for the output files to appear and then processses them instead of waiting until the forked subprocess terminates. In basic testing it appears that this mechanism is about the same speed as the previous version that does not include progress reporting. This implementation is cross platform and doesn't suffer from the problems of inotify (Linux only) or kqueues (BSD/Mac OS equivalent of inotify that requires an open file descriptor for each monitored file). I still need to implement input option parsing and a decompress mode so I can do proper testing.

f6c21781 02/07/2017 10:25 PM David Sorber

Well I fixed my bizzarre problem last night. It turns out that I was building the argv list for each forked process from the main input file list instead of from the sub list passed to each thread. Now PCA runs in a much more stable fashion. Next I'd like to add some sort of progress reporting and also decompress support. I had the idea of using inotify on the output files (since their names are known a priori) however inotify is Linux only and I haven't yet found a drop in replacement for Mac OS.

b216a5b0 02/05/2017 05:42 PM David Sorber

Adding my initial PCA work. This project depends on packJPG. I see intermittent issues and I'm not sure if it is caused by my code or by the packJPG code.

30f264c2 02/02/2017 01:54 PM David Sorber

Correcting memory leak cause by not calling sqlite3_finalize.

7080e544 01/27/2017 11:59 AM David Sorber

Updating the templatized query PoC to support the case where integer or float type columns return NULL and should be treated as 0 and 0.0 respectively.

9141fda7 01/24/2017 04:28 PM David Sorber

Another minor tweak to the makefile to add the useful "-f" flag to rm so that it doesn't puke if the file(s) you're attempting to remove don't exist.

6e0e98fd 01/24/2017 04:17 PM David Sorber

Minor tweak to makefile to delete the executable on clean.

258a530e 01/24/2017 04:11 PM David Sorber

Adding a boolean helper function to my proof-of-concept.

143a60e7 01/24/2017 03:47 PM David Sorber

After much contemplation I realized that my previous approach to solving this execute query template function problem was more wrong than right. Several days of staring at and reading about variadic templates later I figured out the correct way to accomplish my goal.

6e4119a4 01/19/2017 08:32 PM David Sorber

I finally got back to working on this POC, and I was able to get it mostly working. The only issue right now is that the template magic is attempting to create code for which the types don't match and don't cast decay nicely. That is if you try to assign a std::string to a tuple. Hopefully I can fix this with a bit of massaging.

6dbacc3b 01/16/2017 01:45 PM David Sorber

Modifying my support scripts after upgrading phalanx.

9471fa32 11/30/2016 01:17 AM David Sorber

Updating main apache config with new cert names.

d7fc31b1 11/22/2016 11:22 PM David Sorber

Minor updates to the checker script to include full paths for the utilities that it calls.

(151-175/316) Per page: 25, 50, 100

Also available in: Atom