Giter Club home page Giter Club logo

non-trivial-benchmarks's Introduction

non-trivial-benchmarks

Some Common lisp benchmarks to compare libraries and techniques.

Setup

If you would like to run or adapt the test suite it's best you use qlot. Qlot provides a way for developers to ensure they have the library versions as the last time the tests where ran.

(Option 1) Roswell

Installing qlot with roswell is as easy as

ros install qlot

Then ensure qlot is in your path

Then install the dependencies using

qlot install

(Option 2) Quicklisp

Simply start up a repl at the root directory then in the repl run

(ql:quickload :qlot)
(qlot:install :non-trivial-benchmarks)

Running the benchmarks

If the dependencies were installed correctly you can run the benchmarks by running make in the root directory.

How does non-trivial-benchmarks differ from cl-bench?

  • cl-bench contains benchmarks aimed at comparing the performances of different common lisp implementations, whereas
  • non-trivial-benchmarks aims to compare different techniques, methodologies, algorithms, etc within the same lisp implementation.

non-trivial-benchmarks's People

Contributors

fstamour avatar gavinok avatar

Stargazers

ellis avatar  avatar

Watchers

James Cloos avatar  avatar  avatar

Forkers

gavinok

non-trivial-benchmarks's Issues

brainstorm on things to benchmark

I should create issues for all these... Maybe I could create a "brainstorm" issues to dumps all ideas in it, and later create specific issues as needed

  • cl-ppcre v.s. one-more-re-nightmare
  • alist v.s. plist v.s. hash-table v.s. fset
  • json libraries
  • jzon
  • cl-json
  • jonathan
  • shshrhtsht (don't rembember how it's spelled)
  • websocket libraries
  • web frameworks/libraries
  • cl:read v.s. eclector:read
  • cl-fad v.s. uiop's stuff
  • random number generators
  • series v.s. other iterators/generators
  • fset v.s. other functional data structures

plot some graphs

perhaps using gnuplot?

  1. We first need to extract the data from the benchmarks.
  2. Then we should save that data to disk. This will save time during development, and would - eventually - let other people analyze the data without having to run the benchmarks.
  3. Load the data
  4. Plot it!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.