storage

Photo de Eduardo Soares sur Unsplash

The COOP team developed a lot of tools. Here is a non-exhaustive curated Alphabetical list of our creations with useful links.

If a link is broken, please send a message to coop@cerfacs.fr

ANUBIS: Git repository exploration

Licence : open-source , MIT

Built on top of Tucan, this package explores the Git repositories and can extract heaps of usefull dataviz to discuss with the team developpers.

ARNICA : Basic utilities

Licence : open-source , MIT

Arnica or “All the Recurrent No-brainers In CFD Applications” gather many utilities we use everywhere, from simple viscosity laws to dumpy numpy arrays as a XDMF file.

If it is tiny, generic and re-used everywhere, it goes up into Arnica.

CODE LSD : small applications with LLMs

Licence : open-source , MIT

CODE LSD gather some proof on concepts of Applications using LLMs to help code developments. This is where we store the Walking Prompt that can translate a full codebase (500M LOC) into natural language, recursively, making summaries for each folders.

CLOUD2CLOUD : interpolations without connectivity

Licence : open-source , MIT

CLOUD2CLOUD is a simple tool to interpolate N-dimensional data between two M-dimensional meshes as fast as possible using Radial Based Functions with Scipy CKDtrees. At any point of the target mesh the data is computed from K nearest neighbours in the source mesh.

KOKIY : A handler for cartesian meshes mapping curved surfaces

Licence : open-source , MIT

Kokiy contains utilities to work on 2D and 3D structured grids. Grids can be, among others, cartesian planes (CartShell) or axi-cylindrical extrusions from x-r splines (AxiShell). ThickShell are 3D shells built by extruding any of the available 2d objects. Check out the API reference for an extensive list of all available geometries.

H5CROSS : utilities for HDF5 files

Licence : open-source , MIT

This package provides basic utilities around hdf5 type files. This includes the computation of standard statistics on data arrays such as the mean, min, max, median and standard deviation. An interactive mode is enabled through the use of nobvisual (https://pypi.org/project/nobvisual/). Scatter plot comparative capability is enabled through seaborn and matplotlib.

HIP : the mesh swiss army knife

Licence : open-source , MIT

Hip is an open source package for manipulating unstructured computational grids and their associated datasets.

KALPATARU : the parallel partitioner and remesher

A hierarchical graph/mesh partitioning tool and library capable of generating very high quality partitioning with complete support for a scalable running algorithm. It exploits the hierarchical structure of the parallel hardware resources and tries to optimise the partitioning and load-balancing. KalpaTARU comes in two flavours a callable external library and as standalone application. Refer to the documentation pages for more information.

Licence : open-source , MIT

LEMMINGS: Portable HPC workflow builder

Licence : open-source , MIT

Lemmings is an open-source code designed to simplify the submission of multiple inter-dependent jobs on the schedulers of HPC clusters. While originally developed within the context of Computational Fluid Dynamics (CFD) applications, it is adapted to many recursive jobs. A farming mode is present to help the replication of these recursive jobs for a parametric study.

Principle : A job (heavy computation) followed by a post_job (observation). The post_job decides if a new iteration is needed. It aims at portability accross machines, complete log and debug clues, readability and control over simulatneous workflows.

MARAUDER’s MAP: Codebase Mapping

Licence : open-source , MIT

Built on top of Tucan, this package build the Static callgraph and can provide interactive rich vizualizations of complex coebases with the awesome Moonframe.

MOONFRAME : interactive datavizualization using D3.js

Licence : open-source , MIT

Moonframe is an open-source Python library that helps you create interactive graphs using D3.js without writing a single line of JavaScript. It’s built for quick data exploration and aims to be as simple and accessible as possible.

MS-THERMO: Manipulating solution state as a NumPy array

Licence : open-source , MIT

This packages most used element is State, an object that kept the state of a fluid consistent. You can change its temperature, or its composition, and all conservative and primitive variables are automatically updated.

NOB the Nested OBject manipulator¶

Licence : open-source , MIT

Nob is used for smart intereaction with large and deeply nested information (dicts, lists, nested randomly).

NOBVISUAL : circular packing

Licence : open-source , MIT

Nobvisual is a Tkinter canvas for Circular packing interactive figures;

OPENTEA 3: GUI engine

Licence : open-source , MIT

OpenTEA 3 is a python/Tkinter GUI engine. The specification of the GUI are written using the SCHEMA santadard. The engine interpret this Schema as Forms with the correct widgets.

The memory of the generated app. is of course always satisfying the Schema provided.

OPENTEA3 also features a polyvalent 2D acquisition tool.

PYAVBP : a python wrapper for the Solver AVBP

Licence : diffusion-limited , AVBP

PyAVBP is a wizard, i.e. a set of helper tools, for complex AVBP setups through Python.

Main High level features : Full setup scenario, Graphical user Interfaces Main Low level features : I/O for meshes, run.params, temporal solutions, spatial solutions.

SATIS

Licence : open-source , MIT

Satis is a python3 / scipy implementation of the Fourier Spectrums in Amplitude ans Power Spectral Density. It is particularly suited for CFD signals with the following characteristics:

Short sampling time,
Potentially short recording time,
Low signal-to-noise ratio,
Multiple measures available.

SEED Worklolad analyser and simulator

Licence : open-source , MIT

Seed is a tool to analyze and model HPC scheduling traces. It provides frequentist or Markov-chain models for user behaviors, and mockup schedulers.

SHOWY : Light dashboard for time-dependent traces

Licence : open-source , MIT

Designed to replace the BASH xg tool of AVBP, Showy is a python wrapper of matplotlib (and recently pyplot) to generate consistent graph arrays of time-dependent trags

TEKIGO: Mesh‑adaptation controller

Licence : open-source , MIT

Helpers to control refinement BEFORE adaptation.

TThe two important helpers:

  1. evaluate_metric() estimates the final number of cells IF we adapt with the current field
  2. calibrate_metric() adjust metric to reach a user-defined mesh size.

TINY 3D ENGINE: A very light Tkinter 3D renderer

Licence : open-source , MIT

A tiny 3D render in tkinter canvas, for light 3D feedback when nothing advanced is available.

TUCAN: A python codebase parser

Licence : open-source , MIT

The Uncompromising Code Analyzer.

A lightweight code parser and static code analyser in Python, able to compute several code metrics for Python, Fortran and C/C++.

We had to replace the nice Lizard because it was failing on very old and modern fortran and was a hell to extend for our purposes.

Like this post? Share on: TwitterFacebookEmail


Antoine Dauptain is a research scientist on computer science and engineering for HPC. He is the assistant team leader of COOP.

Keep Reading


Published

Category

Pitch

Tags

Stay in Touch