ASC (automatically scalable computation) is an machine learning architecture designed to “transparently and automatically scale the performance of sequential programs”1.
sva, a Python tool for examining bit vectors produced by ASC.
--daemonflag. When ASC starts in daemon mode, it doesn’t run any kernel, but it backgrounds itself and opens a UNIX control socket.
libmicrohttpdsupport. In daemon mode, ASC listens on port 10007 for HTTP requests. At the moment, the daemon responds by providing a list of kernels for which there is a
.netfile in the ASC directory.
ascsh.shis invoked with the UNIX socket file that the ASC daemon opens and uses
socatto send strings to the daemon. Currently, the daemon will respond to the
quitcommand, which causes the daemon to shut down the HTTP server and exit cleanly. It also supports the
refreshcommand, which causes the ASC daemon to check its directory for any new
.netfiles, which would indicate that new training data is available to be served over HTTP.
ascd. This will eventually allow the daemon to be developed separately from the ASC client. However, the ASC client will still need to be updated so that it
STOREs learning data it needs/generates in a given run of a program.
ascdto SQLite. The daemon will now keep its learning data in a SQLite database.
A. Waterland, E. Angelino, R.P. Adams, J. Appavoo, and M.I. Seltzer. ASC: Automatically Scalable Computation, in ASPLOS, 2014, ACM. ↩