This repository was archived by the owner on Sep 30, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 14
123 lines (115 loc) · 4.6 KB
/
PyBenchmarks.yml
File metadata and controls
123 lines (115 loc) · 4.6 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
# This workflow will install Python dependencies, run tests and lint with a variety of Python versions
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions
name: Auto Benchmark
on:
schedule:
- cron: '0 1 * * 3' # Runs at 09:00 UTC on the 1st of every month
workflow_dispatch:
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Set up Pypy3.7
uses: actions/setup-python@v2
with:
python-version: 'pypy-3.7'
- name: Set up Python3.9
uses: actions/setup-python@v2
with:
python-version: '3.9'
- name: Set up Pyston2.3
run: |
wget https://github.com/pyston/pyston/releases/download/pyston_2.3.5/pyston_2.3.5_20.04.deb
sudo apt install ./pyston_2.*.deb
- name: Install dependencies
run: |
python -m pip install psutil==5.8.0
pypy -m pip install psutil==5.8.0
pyston -m pip install psutil==5.8.0
- name: Test binary-trees
working-directory: python-extension/script
run: |
python -OO binary-trees.py 21 > nooutput.txt
pypy -OO binary-trees.py 21 > nooutput.txt
pyston -OO binary-trees.py 21 > nooutput.txt
- name: Test fannkuch-redux
working-directory: python-extension/script
run: |
python -OO fannkuch-redux.py 12 > nooutput.txt
pypy -OO fannkuch-redux.py 12 > nooutput.txt
pyston -OO fannkuch-redux.py 12 > nooutput.txt
- name: Test fasta
working-directory: python-extension/script
run: |
python -OO fasta.py 25000000 speedtest > fasta25000000.txt
pypy -OO fasta.py 25000000 speedtest > fasta25000000.txt
pyston -OO fasta.py 25000000 speedtest > fasta25000000.txt
- name: Test k-nucleotide
working-directory: python-extension/script
run: |
python -OO k-nucleotide.py 0 < fasta25000000.txt > nooutput.txt
pypy -OO k-nucleotide.py 0 < fasta25000000.txt > nooutput.txt
pyston -OO k-nucleotide.py 0 < fasta25000000.txt > nooutput.txt
rm fasta25000000.txt
- name: Test mandelbrot
working-directory: python-extension/script
run: |
python -OO mandelbrot.py 16000 > nooutput.txt
pypy -OO mandelbrot.py 16000 > nooutput.txt
pyston -OO mandelbrot.py 16000 > nooutput.txt
- name: Test n-body
working-directory: python-extension/script
run: |
python -OO n-body.py 50000000 > nooutput.txt
pypy -OO n-body.py 50000000 > nooutput.txt
pyston -OO n-body.py 50000000 > nooutput.txt
- name: Test pidigits
working-directory: python-extension/script
run: |
python -OO pidigits.py 10000 > nooutput.txt
pypy -OO pidigits.py 10000 > nooutput.txt
pyston -OO pidigits.py 10000 > nooutput.txt
- name: Test regex-redux
working-directory: python-extension/script
run: |
pyston -OO fasta.py 5000000 nospeedtest > fasta5000000.txt
python -OO regex-redux.py 0 < fasta5000000.txt > nooutput.txt
pypy -OO regex-redux.py 0 < fasta5000000.txt > nooutput.txt
pyston -OO regex-redux.py 0 < fasta5000000.txt > nooutput.txt
rm fasta5000000.txt
- name: Test reverse-complement
working-directory: python-extension/script
run: |
pyston -OO fasta.py 100000000 nospeedtest > fasta100000000.txt
python -OO reverse-complement.py 0 < fasta100000000.txt > nooutput.txt
pypy -OO reverse-complement.py 0 < fasta100000000.txt > nooutput.txt
pyston -OO reverse-complement.py 0 < fasta100000000.txt > nooutput.txt
rm fasta100000000.txt
- name: Test spectral-norm
working-directory: python-extension/script
run: |
python -OO spectral-norm.py 5500 > nooutput.txt
pypy -OO spectral-norm.py 5500 > nooutput.txt
pyston -OO spectral-norm.py 5500 > nooutput.txt
rm nooutput.txt
- name: Add version mark
working-directory: python-extension/result
run: |
sudo apt update
sudo apt install lsb-release -y
lsb_release -a > version.txt
uname -a >> version.txt
python -V >> version.txt
pypy -V >> version.txt
pyston -V >> version.txt
- name: Commit files
run: |
git config --local user.email "actions@github.com"
git config --local user.name "GitHub Action[Bot]"
git add -A
git commit -m "Auto update latest py interpreter's benchmarks"
- name: Push changes
uses: ad-m/github-push-action@master
with:
github_token: ${{ secrets.GITHUB_TOKEN }}