AobaAPI
riscv-perf-model
AobaAPI | riscv-perf-model | |
---|---|---|
2 | 1 | |
34 | 99 | |
- | - | |
0.0 | 7.9 | |
almost 3 years ago | 12 days ago | |
C++ | C++ | |
MIT License | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
AobaAPI
-
Simple houses - made using my own 3D modeling API (C++), rendered in Blender
The library can be found here: https://github.com/lsimic/AobaAPI - it is still in development and issues/bugs are likely to occour, and it is not yet really "feature-rich".
-
Procedural mesh generation beyond cube
so(sorry for self-promotion) I decided to build my own 3D modeling library to provide functionality similar to that of BMesh. Currently it's not really feature rich, but it can create some complex meshes with a bit of work. You can find the library here https://github.com/lsimic/AobaAPI/tree/develop and some examples https://github.com/lsimic/AobaExamples here. It's written in C++ and builds fine on both Windows(With Visual Studio) and Linux(with clang). I'm doing this as a part of my master's thesis and the paper should be done within a week or so(hopefully), in which I go into detail about design and implementation of such libraries.
riscv-perf-model
-
Do Necessary Tools Exist for RISC-V Verification?
I 100% agree on verilator. It’s by far the most efficient tool for many simulation and verification needs. Hands down. Even more so if you are building CPUs
UVM definitely has its place still in verification flows. It for something as complex and flexible as a CPU for sure, it’s hard to beat the amount of cycles and coverage you get from verilator. (EDA license fees are a big part of that, but also the fact that verilator generates just C++ code you can integrate with the rest of your s/w flow is invaluable).
But: What is also important for CPU is good validation and compliance test, (random or replayed or directed) instruction stream generators, ISS to validate agains etc. There are so much more scenarios to check because a CPU needs to handle any sequence of any instructions flawlessly.
Those tools are also crucial. And they are being built or sold for RISC-V now too. And also: I much prefer combining those with verilator than with commercial eda tools. And don’t forget: before you start building a lot of RTL, you’ll typically will also build C based higher level performance models of the micro architecture, eg https://github.com/riscv-software-src/riscv-perf-model
What are some alternatives?
proc-rock - Procedural Generation of Realistic-looking Rocks using Geological and Visual Clues
CHRONO - High-performance C++ library for multiphysics and multibody dynamics simulations
pmp-library - The Polygon Mesh Processing Library
riscv-formal - RISC-V Formal Verification Framework
Open3D - Open3D: A Modern Library for 3D Data Processing
gem5 - The official repository for the gem5 computer-system architecture simulator.
tinyraytracer - A brief computer graphics / rendering course
taichi - Productive, portable, and performant GPU programming in Python.
tinyrenderer - A brief computer graphics / rendering course
3DWorld - 3D Procedural Game Engine Using OpenGL
AobaExamples - Examples for lsimic/AobaAPI
shapeml - ShapeML is a rule- or grammar-based procedural 3D modeling framework.