Skip to content

Cap'n Proto interface files for the simulation server API

License

Notifications You must be signed in to change notification settings

NyanCAD/SimServer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

44 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SimServer

A Cap'n Proto interface for running simulations over the network.

What

Most simulators have a command-line interface that takes source files and spits out data files. Most also have a C API to do more tight integration.

SimServer is an abstraction over the C API of various simulators that allows you to offer tighter integration with multiple simulators. For example:

  • Results as data structure instead of obscure file formats
  • Progress updates
  • Streaming results
  • Simulator subclasses to access simulator-specific features

Why

Some simulators can be hard to install, particularly on some operating systems. Running the simulator in Docker or on a server solves this problem.

You might want to develop locally on your laptop, but run simulations on a powerfull server. A simulation server allows this.

Shelling out to the CLI is simple but does not allow deep integration. Using the C API tightly couples your program to the simulator, and could segfault your whole program.

Status

This collection of projects is extremely alpha. The API is subject to change, and the implemenations are far from complete. Current implementations:

Desired:

  • JuliaSpice
  • WRSpice, Qucs, Gnucap?
  • ghdl, verilator?

About

Cap'n Proto interface files for the simulation server API

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published