aboutsummaryrefslogtreecommitdiff
path: root/src/im-sandbox.c
AgeCommit message (Collapse)Author
2023-05-02Avoid unused variable if compiled without HAVE_SCHED_SETAFFINITYThomas White
2023-05-02indexamajig: Add --cpu-pinThomas White
Similar code was stripped out 3.5 years ago by 4f4e5d05269eee6b192c271f2f9730a1ad3a4fbd. However, it seems there are still systems where it improves performance a lot.
2022-11-08indexamajig: Exit only once all workers received kEndOfStreamThomas White
Previously, the whole program would exit if any worker saw kEndOfStream. Unfortunately, this happens quite often, due to data starvation (too many workers for the data rate) or just general slowness. Therefore we need a more robust criterion.
2022-10-05indexamajig: Improve accuracy of speed reportsThomas White
2022-07-07indexamajig: Remove separate waitpid() calls when cleaning up last processesThomas White
2022-07-06indexamajig: Add timeout for ZMQ socketThomas White
2022-07-06indexamajig: Add profiling and last_task info for ZMQ fetchThomas White
2022-06-22indexamajig: Wrap ZMQ parameters into separate structureThomas White
2022-06-22indexamajig: Wrap ASAP::O parameters up inside separate structureThomas White
2022-06-17ASAP::O: Simplify by removing stream switching logicThomas White
2022-06-16ASAP::O: Exit quicker (and with explanation) if setup failsThomas White
2022-06-02ASAP::O: Add last_task for ASAPO fetchThomas White
2022-06-02Add worker ID to profiling dataThomas White
2022-06-02indexamajig: Add --asapo-streamThomas White
2022-06-02indexamajig: Track metadata (e.g. for ASAP::O)Thomas White
2022-06-02ASAP::O: Add profiling bitsThomas White
2022-06-02Generate placeholder filename/event earlierThomas White
Previously, a placeholder was put in the queue ("ZMQdata //" or "ASAPOdata //"), and replaced by image_read_data_block. Instead, the "final" placeholder can be put in the queue already. Note that ASAP::O, at least, will replace this placeholder with a filename delivered by the data transport.
2022-06-02ASAP::O: Pass filename throughThomas White
2022-06-02ASAP::O: Remove filesystem pathThomas White
This is only really needed for offline processing. It's an added complication for now. Maybe we'll revisit it later and re-expose this, though.
2022-06-02ASAP::O: Expose data sourceThomas White
2022-06-02ASAP::O: Simplify im_asapo_make_unique_group_idThomas White
2022-06-02ASAP::O: Don't send data to process_image if nothing cameThomas White
2022-06-02ASAP::O: Show the uniquely-generated group IDThomas White
2022-06-02indexamajig: Don't do ASAP::O stuff unless asked forThomas White
2022-06-02indexamajig: Exit if unique ASAP::O group ID can't be createdThomas White
2022-06-02indexamajig: Special cases for ASAP::O as for ZMQThomas White
2022-06-02ASAP::O: Remove vestigial blockThomas White
2022-06-02ASAP::O: Fix memory leak on error pathThomas White
2022-06-02ASAP::O: Tidy up build processThomas White
This removes a lot of random #ifdefs from the source code.
2022-06-02Fix build without ASAP::OThomas White
2022-06-02ASAP::O: Actually get the dataThomas White
2022-06-02ASAP::O: Group ID stuffThomas White
2022-06-02ASAP::O gutsThomas White
2022-05-04Write profile information in one call to write()Thomas White
Unfortunately, the complicated series of nested printf()s doesn't work well from multiple processes.
2022-05-04Add improved profilingThomas White
Improvements: - Recursive, so we can see how things are working at different levels - Everything is profiled, even if not explicitly labelled - No possibility of losing time - Detects mistakes if routines aren't wrapped correctly
2022-05-03Strip out time-accountsThomas White
2022-03-02indexamajig: Return a specific error code (5) if no files could be processedThomas White
2021-12-17indexamajig: Avoid fclose(NULL)Thomas White
When running online, there's no input file handle to close.
2021-12-17indexamajig: Send sandbox ping while waiting for next frameThomas White
This avoids the process getting killed while waiting e.g. between runs in an online context.
2021-12-07indexamajig: Generate per-frame profiling numbersThomas White
2021-12-07indexamajig: Shut down cleanly on SIGUSR1Thomas White
2021-09-07indexamajig: Avoid crash on NULL eventThomas White
2021-07-23indexamajig: Fix error path when worker pipe is closed mid-chunkThomas White
2021-07-23try_status: Remove duplicate assignmentThomas White
2021-07-21Add missing cleanup on error pathsThomas White
2021-05-05indexamajig: Add --zmq-requestThomas White
This (re-)adds the ability to get data via a request/reply socket. See afcb7b568947c for when it was removed.
2021-04-23indexamajig: Generate a unique filename for ZMQ dataThomas White
The unique filename is needed by the GUI for looking up results in a stream. Otherwise, the filename is "(null)" for everything and the lookup just returns the first chunk in the stream. The filename is generated based on the unique serial number for each chunk, and is therefore unique across one run of indexamajig regardless of the number of worker processes (-j). This might have to change in future to accommodate jobs run across multiple nodes, if there is any demand for looking at results in one big concatenated stream. This also changes the condition for deciding when to look for a 'real' file, to take into account that there is always a non-NULL filename.
2021-04-23indexamajig: Mercilessly ignore short ZMQ messagesThomas White
This is a hack to filter out what seems like "keepalive" messages. It's nasty, but better than contaminating the stream with spurious chunks.
2021-04-23indexamajig: Add --zmq-subscribeThomas White
2021-04-20Fix memory handling semantics for ZMQ dataThomas White