Skip to content

Commit 655a0fb

Browse files
author
Mingshen Sun
committed
readme: add design and benchmarks
1 parent ce8b78d commit 655a0fb

File tree

3 files changed

+26
-0
lines changed

3 files changed

+26
-0
lines changed

README.md

+26
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,21 @@ features of MesaPy:
4343
More details about each features, roadmap, and building process can be found here:
4444
[https://docs.mesapy.org/](https://docs.mesapy.org/)
4545

46+
## Design
47+
48+
MesaPy enhances PyPy in security. Compared to CPython (as known as Python),
49+
MesaPy provides a comprehensive security protection. Following figure illustrates
50+
MesaPy's design and implementation. Blocks highlighted in read means unsafe
51+
components, while blue blocks represent safe components. MesaPy aims to
52+
protect Python runtime by our security hardening.
53+
54+
![Design](img/design.png)
55+
56+
By using formal verification, type system enhancement, and memory safe
57+
programming language, MesaPy mitigates potential memory safety issues of both
58+
CPython and PyPy. MesaPy's goal is to provide a fast and memory safe Python
59+
runtime.
60+
4661
## Getting Started
4762

4863
Basically, you can use MesaPy as any other Python implementations (e.g., CPython
@@ -103,6 +118,17 @@ The detailed instructions and additional mocks are also included in each tool's
103118
separate directory. You can easily reproduce the verification process. You are
104119
welcome to contribute mocks and help us to verify files in the TODO list.
105120

121+
## Benchmark
122+
123+
We used 19 Python scripts to run our performance evaluation. Each script is
124+
executed in ten times for MesaPy, PyPy 6.0.0, and Python 2.7.12 respectively.
125+
The benchmarks are shown in the following figure.
126+
127+
![Benchmarks](img/benchmarks.png)
128+
129+
Thanks to JIT and efficient GC mechanism, MesaPy can achieve 10x plus speedup
130+
compared to Python 2.7.12.
131+
106132
## Contributing
107133

108134
We still have some working-in-progress sub-projects. We are very happy if you

img/benchmarks.png

319 KB
Loading

img/design.png

518 KB
Loading

0 commit comments

Comments
 (0)