You are not logged in.

sprezzatech research


Architecture of a libtorque-enabled process Since before even 4.4BSD or POSIX.1, programming via events and continuations has marked best UNIX practice for handling multiplexed I/O. Our open source, portable libtorque library extends previous threaded cores through aggressively exploiting details of memories, processors, and their interconnections (as detected at runtime), and implies a new state-of-the-art in architecturally-adaptive, high-performance systems programming. Built with scalability (in both the large and small), low latency, and faithfulness to UNIX idiom as guiding lights, libtorque subsumes the functionality of existing I/O frameworks (for which we provide compatibility wrappers) despite superior performance across most loads and apparatus. Learn more in our paper, "libtorque: Portable Multithreaded Continuations for Scalable Event-Driven Programs."


Omphalos: Network Dominance Omphalos enumerates and dominates local networks. Designed around Linux's rtnetlink(7) layer and zero-copy PACKET_MMAP capabilities, Omphalos makes use of various topology discovery mechanisms, passive packet analysis, and active mapping to provide precise, scalable, real-time insight into wired and wireless networks. Omphalos can assist in discovery of unauthorized hosts or services, policy violation, routing and naming divergences, misconfigured hosts, intrusions, and data leakage, seizing control of even unmanaged networks via redirection at Layers II and III.


Growlight: A modern installer
Growlight provides a unified, forward-looking system installation platform. It is being developed for SprezzOS. Growlight supports both UEFI and BIOS-based booting in a single boot image, loads firmware blobs, embeds a number of useful diagnostics, and is fully GPT-aware.


Libblossom: branching thread creation Libblossom facilitates optimal creation and precise placement of POSIX userspace threads on NUMA manycore machines. Libblossom spawns threads in parallel, harnessing child threads to build up an n-ply in time logarithmic on n. Threads' stacks are placed in memory using coloring on cache and virtual memory parameters. CPUset API's are utilized to bind threads to sets of processing elements, and to further optimize massive spawning by taking into account NUMA properties including cache sharing and interconnects.