SkillAgentSearch skills...

Pstack

POETS Simulation Stack

Install / Use

/learn @POETSII/Pstack
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

POETS Simulation Stack (pstack)

<p align="center"> <img align="center" src="docs/pstack.svg" width="40%" alt="PSIM Setup"> </p>

Overview

pstack is a distributed POETS simulation stack based on Redis. It exposes the compute power of a hetrogeneous array of POETS back-end engines to multiple users in a POSIX-like environment.

Features:

  • Processes: application instances modeled after POSIX processes
  • Multi-user support: multiple users can run processes on a single pstack service simultaneously
  • Distributed execution: a single application can be distributed across several machines in arbitrary arrangements
  • Real-time Monitoring: live monitor of running processes and back-end engine resource utilisation
  • Heterogeneity: supports arbitrary back-end engines (e.g. different simulators or even actual hardware)
  • Job queues: processes are queued when back-end engines are unavailable or insufficient
  • Terminal: command line user interface with built-in Python interpreter
  • Debugging: supports debug breakpoints and manual inspection/injection of messages
  • Unit Testing: Down-to-earth unit testing framework supporting push-button testing over entire back-end infrastructure
  • Minimal dependencies: just pip and socat on a fresh Ubuntu installation.
  • Automated Deployment: parallel (multi-host) installation over SSH in 10 seconds using fabric.

Design Goals:

  • Focus on developing POETS-specific capabilities while leaving more common programming chores to existing specialized tools and technologies (Redis for distributed shared memory and socat for socket communication).
  • Decouple stack layers using TCP connections to permit reliable, performant and secure distributed operation using standard communication technologies (Ethernet, SSH tunnels etc.).
  • Leverage Python for productivity (multiprocessing, jinja) and C for performance (simulation)
  • Deliver the best performance and feature set while keeping the implementation as simple and maintainable as possible.

Documentation

Design Notes

User Guides

Developer Guides

Related Skills

View on GitHub
GitHub Stars4
CategoryDevelopment
Updated1y ago
Forks2

Languages

Python

Security Score

60/100

Audited on Mar 19, 2025

No findings