summaryrefslogtreecommitdiffstats
path: root/development/reckless/README
diff options
context:
space:
mode:
Diffstat (limited to 'development/reckless/README')
-rw-r--r--development/reckless/README17
1 files changed, 17 insertions, 0 deletions
diff --git a/development/reckless/README b/development/reckless/README
new file mode 100644
index 0000000000..9cb58fc3c9
--- /dev/null
+++ b/development/reckless/README
@@ -0,0 +1,17 @@
+Reckless is an extremely low-latency, high-throughput logging library.
+It was created to perform extensive diagnostic logging without
+worrying about performance. Other logging libraries boast the ability
+to throw log messages away very quickly. Reckless boasts the ability
+to keep them all, without worrying about the performance impact.
+Filtering can and should wait until you want to read the log, or need
+to clean up disk space.
+
+The code generated at the call site consists of:
+
+- Pushing the arguments on a thread-local queue. This has the same
+ cost as pushing the arguments on the stack for a normal function
+ call.
+- Call to Boost.Lockless (NB: this is bundled with the library, not
+ an external dependency) to register the write request on a shared
+ lockless queue. The actual message formatting and writing is
+ performed asynchronously by a separate thread.