Skip to content

Commit

Permalink
docs(frontend): execution time on HPC
Browse files Browse the repository at this point in the history
  • Loading branch information
bcm-at-zama committed Jul 10, 2024
1 parent 817341f commit 43350ce
Showing 1 changed file with 76 additions and 84 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,6 @@ We show in [our code](levenshtein_distance.py) how to do that simply, with our F
Available options are:

```
usage: levenshtein_distance.py [-h] [--show_mlir] [--show_optimizer] [--autotest] [--autoperf] [--distance DISTANCE DISTANCE]
[--alphabet {string,STRING,StRiNg,ACTG}] [--max_string_length MAX_STRING_LENGTH]
Expand Down Expand Up @@ -56,9 +55,10 @@ The most important usages are:
strings "Zama" and "amazing", considering the chars of "StRiNg" alphabet

```
Running distance between strings 'Zama' and 'amazing' for alphabet StRiNg:
Computing Levenshtein between strings 'Zama' and 'amazing' - distance is 5, computed in 48.70 seconds
Computing Levenshtein between strings 'Zama' and 'amazing' - distance is 5, computed in 44.51 seconds
Successful end
```
Expand All @@ -72,58 +72,58 @@ Letters are abcdefghijklmnopqrstuvwxyz
Computations in simulation
Computing Levenshtein between strings '' and '' - OK
Computing Levenshtein between strings '' and 'u' - OK
Computing Levenshtein between strings '' and 'nh' - OK
Computing Levenshtein between strings '' and 'fmf' - OK
Computing Levenshtein between strings '' and 'cljm' - OK
Computing Levenshtein between strings 'v' and '' - OK
Computing Levenshtein between strings 'v' and 'a' - OK
Computing Levenshtein between strings 'v' and 'hp' - OK
Computing Levenshtein between strings 'g' and 'ktk' - OK
Computing Levenshtein between strings 'o' and 'ydqu' - OK
Computing Levenshtein between strings 'ke' and '' - OK
Computing Levenshtein between strings 'eu' and 'w' - OK
Computing Levenshtein between strings 'hi' and 'gz' - OK
Computing Levenshtein between strings 'mx' and 'tbw' - OK
Computing Levenshtein between strings 'uh' and 'lgad' - OK
Computing Levenshtein between strings 'xpj' and '' - OK
Computing Levenshtein between strings 'cdt' and 'f' - OK
Computing Levenshtein between strings 'trl' and 'rl' - OK
Computing Levenshtein between strings 'zai' and 'pqo' - OK
Computing Levenshtein between strings 'vac' and 'nrov' - OK
Computing Levenshtein between strings 'rnay' and '' - OK
Computing Levenshtein between strings 'xnfg' and 'o' - OK
Computing Levenshtein between strings 'jdgl' and 'ra' - OK
Computing Levenshtein between strings 'wpyq' and 'jxp' - OK
Computing Levenshtein between strings 'enpt' and 'hvfb' - OK
Computing Levenshtein between strings '' and 'p' - OK
Computing Levenshtein between strings '' and 'vv' - OK
Computing Levenshtein between strings '' and 'mxg' - OK
Computing Levenshtein between strings '' and 'iuxf' - OK
Computing Levenshtein between strings 'k' and '' - OK
Computing Levenshtein between strings 'p' and 'g' - OK
Computing Levenshtein between strings 'v' and 'ky' - OK
Computing Levenshtein between strings 'f' and 'uoq' - OK
Computing Levenshtein between strings 'f' and 'kwfj' - OK
Computing Levenshtein between strings 'ut' and '' - OK
Computing Levenshtein between strings 'pa' and 'g' - OK
Computing Levenshtein between strings 'bu' and 'sx' - OK
Computing Levenshtein between strings 'is' and 'diy' - OK
Computing Levenshtein between strings 'fz' and 'unda' - OK
Computing Levenshtein between strings 'sem' and '' - OK
Computing Levenshtein between strings 'dbr' and 'o' - OK
Computing Levenshtein between strings 'dgj' and 'hk' - OK
Computing Levenshtein between strings 'ejb' and 'tfo' - OK
Computing Levenshtein between strings 'afa' and 'ygqo' - OK
Computing Levenshtein between strings 'lhcc' and '' - OK
Computing Levenshtein between strings 'uoiu' and 'u' - OK
Computing Levenshtein between strings 'tztt' and 'xo' - OK
Computing Levenshtein between strings 'ufsa' and 'mil' - OK
Computing Levenshtein between strings 'uuzl' and 'dzkr' - OK
Computations in FHE
Computing Levenshtein between strings '' and '' - OK in 0.01 seconds
Computing Levenshtein between strings '' and 'u' - OK in 0.01 seconds
Computing Levenshtein between strings '' and 'nh' - OK in 0.01 seconds
Computing Levenshtein between strings '' and 'fmf' - OK in 0.01 seconds
Computing Levenshtein between strings '' and 'cljm' - OK in 0.01 seconds
Computing Levenshtein between strings 'v' and '' - OK in 0.01 seconds
Computing Levenshtein between strings 'v' and 'a' - OK in 1.75 seconds
Computing Levenshtein between strings 'v' and 'hp' - OK in 1.77 seconds
Computing Levenshtein between strings 'g' and 'ktk' - OK in 2.78 seconds
Computing Levenshtein between strings 'o' and 'ydqu' - OK in 3.61 seconds
Computing Levenshtein between strings 'ke' and '' - OK in 0.01 seconds
Computing Levenshtein between strings 'eu' and 'w' - OK in 1.73 seconds
Computing Levenshtein between strings 'hi' and 'gz' - OK in 3.53 seconds
Computing Levenshtein between strings 'mx' and 'tbw' - OK in 5.25 seconds
Computing Levenshtein between strings 'uh' and 'lgad' - OK in 7.21 seconds
Computing Levenshtein between strings 'xpj' and '' - OK in 0.01 seconds
Computing Levenshtein between strings 'cdt' and 'f' - OK in 2.53 seconds
Computing Levenshtein between strings 'trl' and 'rl' - OK in 5.32 seconds
Computing Levenshtein between strings 'zai' and 'pqo' - OK in 7.93 seconds
Computing Levenshtein between strings 'vac' and 'nrov' - OK in 10.73 seconds
Computing Levenshtein between strings 'rnay' and '' - OK in 0.01 seconds
Computing Levenshtein between strings 'xnfg' and 'o' - OK in 3.50 seconds
Computing Levenshtein between strings 'jdgl' and 'ra' - OK in 7.01 seconds
Computing Levenshtein between strings 'wpyq' and 'jxp' - OK in 10.67 seconds
Computing Levenshtein between strings 'enpt' and 'hvfb' - OK in 14.30 seconds
Computing Levenshtein between strings '' and '' - OK in 1.29 seconds
Computing Levenshtein between strings '' and 'p' - OK in 0.26 seconds
Computing Levenshtein between strings '' and 'vv' - OK in 0.26 seconds
Computing Levenshtein between strings '' and 'mxg' - OK in 0.22 seconds
Computing Levenshtein between strings '' and 'iuxf' - OK in 0.22 seconds
Computing Levenshtein between strings 'k' and '' - OK in 0.22 seconds
Computing Levenshtein between strings 'p' and 'g' - OK in 1.09 seconds
Computing Levenshtein between strings 'v' and 'ky' - OK in 1.93 seconds
Computing Levenshtein between strings 'f' and 'uoq' - OK in 3.09 seconds
Computing Levenshtein between strings 'f' and 'kwfj' - OK in 3.98 seconds
Computing Levenshtein between strings 'ut' and '' - OK in 0.25 seconds
Computing Levenshtein between strings 'pa' and 'g' - OK in 1.90 seconds
Computing Levenshtein between strings 'bu' and 'sx' - OK in 3.52 seconds
Computing Levenshtein between strings 'is' and 'diy' - OK in 5.04 seconds
Computing Levenshtein between strings 'fz' and 'unda' - OK in 6.53 seconds
Computing Levenshtein between strings 'sem' and '' - OK in 0.22 seconds
Computing Levenshtein between strings 'dbr' and 'o' - OK in 2.78 seconds
Computing Levenshtein between strings 'dgj' and 'hk' - OK in 4.92 seconds
Computing Levenshtein between strings 'ejb' and 'tfo' - OK in 7.18 seconds
Computing Levenshtein between strings 'afa' and 'ygqo' - OK in 9.25 seconds
Computing Levenshtein between strings 'lhcc' and '' - OK in 0.22 seconds
Computing Levenshtein between strings 'uoiu' and 'u' - OK in 3.52 seconds
Computing Levenshtein between strings 'tztt' and 'xo' - OK in 6.45 seconds
Computing Levenshtein between strings 'ufsa' and 'mil' - OK in 9.11 seconds
Computing Levenshtein between strings 'uuzl' and 'dzkr' - OK in 12.01 seconds
Successful end
```
Expand All @@ -134,27 +134,27 @@ Successful end
Typical performances for alphabet ACTG, with string of maximal length:
Computing Levenshtein between strings 'GGAA' and 'AATT' - OK in 5.12 seconds
Computing Levenshtein between strings 'TGCG' and 'ACAG' - OK in 5.00 seconds
Computing Levenshtein between strings 'ATAC' and 'CTAA' - OK in 4.94 seconds
Computing Levenshtein between strings 'CGGA' and 'GCTA' - OK in 4.77 seconds
Computing Levenshtein between strings 'TTCC' and 'CAAG' - OK in 4.45 seconds
Computing Levenshtein between strings 'TGAG' and 'CATC' - OK in 4.38 seconds
Typical performances for alphabet string, with string of maximal length:
Computing Levenshtein between strings 'mtpp' and 'qujk' - OK in 15.48 seconds
Computing Levenshtein between strings 'sucl' and 'teeu' - OK in 14.22 seconds
Computing Levenshtein between strings 'prej' and 'latp' - OK in 14.07 seconds
Computing Levenshtein between strings 'tsyl' and 'slTz' - OK in 13.76 seconds
Computing Levenshtein between strings 'rdfu' and 'qbam' - OK in 12.89 seconds
Computing Levenshtein between strings 'ngoz' and 'fxGw' - OK in 12.88 seconds
Typical performances for alphabet STRING, with string of maximal length:
Computing Levenshtein between strings 'ATRC' and 'VHCZ' - OK in 15.65 seconds
Computing Levenshtein between strings 'BOPL' and 'AUVT' - OK in 14.38 seconds
Computing Levenshtein between strings 'AMLK' and 'HEZX' - OK in 14.22 seconds
Computing Levenshtein between strings 'OjgB' and 'snQc' - OK in 23.94 seconds
Computing Levenshtein between strings 'UXWO' and 'rVgF' - OK in 23.69 seconds
Computing Levenshtein between strings 'NsBT' and 'IFuC' - OK in 23.40 seconds
Typical performances for alphabet StRiNg, with string of maximal length:
Computing Levenshtein between strings 'uIWB' and 'aYZR' - OK in 29.01 seconds
Computing Levenshtein between strings 'adWI' and 'OXyg' - OK in 27.17 seconds
Computing Levenshtein between strings 'jvhQ' and 'Weug' - OK in 26.55 seconds
Computing Levenshtein between strings 'ImNJ' and 'zyUB' - OK in 23.71 seconds
Computing Levenshtein between strings 'upAT' and 'XfWs' - OK in 23.52 seconds
Computing Levenshtein between strings 'HVXJ' and 'dQvr' - OK in 23.73 seconds
Successful end
Expand All @@ -181,38 +181,30 @@ it's only signed 3-bit PBS.
The benchmarks were done using Concrete 2.7 on `hpc7a` machine on AWS, and give:

```
Typical performances for alphabet ACTG, with string of maximal length:
Computing Levenshtein between strings 'GGAA' and 'AATT' - OK in 5.12 seconds
Computing Levenshtein between strings 'TGCG' and 'ACAG' - OK in 5.00 seconds
Computing Levenshtein between strings 'ATAC' and 'CTAA' - OK in 4.94 seconds
Computing Levenshtein between strings 'CGGA' and 'GCTA' - OK in 4.77 seconds
Computing Levenshtein between strings 'TTCC' and 'CAAG' - OK in 4.45 seconds
Computing Levenshtein between strings 'TGAG' and 'CATC' - OK in 4.38 seconds
Typical performances for alphabet string, with string of maximal length:
Computing Levenshtein between strings 'mtpp' and 'qujk' - OK in 15.48 seconds
Computing Levenshtein between strings 'sucl' and 'teeu' - OK in 14.22 seconds
Computing Levenshtein between strings 'prej' and 'latp' - OK in 14.07 seconds
Computing Levenshtein between strings 'tsyl' and 'slTz' - OK in 13.76 seconds
Computing Levenshtein between strings 'rdfu' and 'qbam' - OK in 12.89 seconds
Computing Levenshtein between strings 'ngoz' and 'fxGw' - OK in 12.88 seconds
Typical performances for alphabet STRING, with string of maximal length:
Computing Levenshtein between strings 'ATRC' and 'VHCZ' - OK in 15.65 seconds
Computing Levenshtein between strings 'BOPL' and 'AUVT' - OK in 14.38 seconds
Computing Levenshtein between strings 'AMLK' and 'HEZX' - OK in 14.22 seconds
Computing Levenshtein between strings 'OjgB' and 'snQc' - OK in 23.94 seconds
Computing Levenshtein between strings 'UXWO' and 'rVgF' - OK in 23.69 seconds
Computing Levenshtein between strings 'NsBT' and 'IFuC' - OK in 23.40 seconds
Typical performances for alphabet StRiNg, with string of maximal length:
Computing Levenshtein between strings 'uIWB' and 'aYZR' - OK in 29.01 seconds
Computing Levenshtein between strings 'adWI' and 'OXyg' - OK in 27.17 seconds
Computing Levenshtein between strings 'jvhQ' and 'Weug' - OK in 26.55 seconds
Computing Levenshtein between strings 'ImNJ' and 'zyUB' - OK in 23.71 seconds
Computing Levenshtein between strings 'upAT' and 'XfWs' - OK in 23.52 seconds
Computing Levenshtein between strings 'HVXJ' and 'dQvr' - OK in 23.73 seconds
Successful end
```

FIXME: re-run the benchmarks on AWS






0 comments on commit 43350ce

Please sign in to comment.