lparallel-1.4.0 released

  • added function task-categories-running
  • new special variable *debug-tasks-p* — setting it to false will transfer errors instead of invoking the debugger inside tasks; default is true
  • added convenience function invoke-transfer-error for local control over debugging tasks:
    (task-handler-bind ((error #'invoke-transfer-error)) ...)
    (task-handler-bind ((error #'invoke-debugger)) ...)
Posted in Uncategorized | Leave a comment

lparallel-1.3.0 released

  • new support for fine-grained parallelism with `defpun’
  • new work-stealing model with lockless queues and optional spinning; enabled by default on SBCL, others default to central queue
  • added pfind, pcount, plet-if, pfuncall
  • fixed redundant restart in `chain’
  • `fulfill’ now accepts non-promises (never succeeds)
  • removed high optimizations exposed in some API functions
  • added shell script for unthrottling CPUs in Linux
  • renamed *kernel-task-category* -> *task-category*, *kernel-task-priority* -> *task-priority*, kernel-handler-bind -> task-handler-bind, preduce/partial -> preduce-partial; old names are still available
Posted in Uncategorized | Leave a comment

lparallel-1.2.0 released

  • added function cancel-timeout; submit-timeout now returns a timeout object
  • renamed emergency-kill-tasks to kill-tasks; old name is still available
  • minor optimization to ptrees
  • added type checks to psort arguments
  • switched test framework to eos
Posted in Uncategorized | Leave a comment

lparallel-1.1.0 released

  • added :wait option to end-kernel — blocks until the kernel has shut down
    (please read the documentation for end-kernel before using)
  • bound *print-circle* to t when printing a kernel — avoids SBCL + SLIME
    crash when evaluating the single form (setf *kernel* (make-kernel …))
Posted in Uncategorized | Leave a comment

lparallel is now part of Quicklisp

(ql:quickload :lparallel)
Posted in Uncategorized | Leave a comment

Welcome

lparallel is a new library for parallelism in Common Lisp.

The buttons at the top link to everything you need to know about lparallel.

Posted in Uncategorized | 3 Comments