diff --git a/bench/data.js b/bench/data.js index 0f79b38fb..02d79209a 100644 --- a/bench/data.js +++ b/bench/data.js @@ -1,5 +1,5 @@ window.BENCHMARK_DATA = { - "lastUpdate": 1721386367468, + "lastUpdate": 1721387415303, "repoUrl": "https://github.com/lambdaclass/lambdaworks", "entries": { "Benchmark": [ @@ -6986,6 +6986,450 @@ window.BENCHMARK_DATA = { "unit": "ns/iter" } ] + }, + { + "commit": { + "author": { + "email": "mrugiero@gmail.com", + "name": "Mario Rugiero", + "username": "Oppen" + }, + "committer": { + "email": "noreply@github.com", + "name": "GitHub", + "username": "web-flow" + }, + "distinct": true, + "id": "07657e915202dc527ad52cfc595b49ee2d19ffd5", + "message": "fix: unaligned read for Metal buffers (#882)\n\nAfter Rust 1.77 `u128` starts requiring 16 bytes aligned values. This\nbreaks Metal, where `retrieve_contents` assumed it could just cast the\npointer and treat it as a slice.\nInstead, we need to assume no alignment by doing the following:\n1. Read the `i-th` element from the buffer with\n `ptr.add(i).read_unaligned()`;\n2. `clone` the read value, as the bitwise copy may cause aliasing\n otherwise;\n3. `push` the `clone`d value into the vector;\n4. `mem::forget` the element we read to avoid calling its `drop`\n implementation twice, one for the copy and one for the `Buffer`.", + "timestamp": "2024-07-19T10:41:19Z", + "tree_id": "26cc2eb7b03e8e8ad67fe128e4735be6f686d900", + "url": "https://github.com/lambdaclass/lambdaworks/commit/07657e915202dc527ad52cfc595b49ee2d19ffd5" + }, + "date": 1721387414291, + "tool": "cargo", + "benches": [ + { + "name": "Ordered FFT/Sequential from NR radix2", + "value": 319533000, + "range": "± 678898", + "unit": "ns/iter" + }, + { + "name": "Ordered FFT/Sequential from RN radix2", + "value": 367275914, + "range": "± 621227", + "unit": "ns/iter" + }, + { + "name": "Ordered FFT/Sequential from NR radix4", + "value": 281614898, + "range": "± 4250879", + "unit": "ns/iter" + }, + { + "name": "Ordered FFT/Sequential from NR radix2 #2", + "value": 674184347, + "range": "± 779615", + "unit": "ns/iter" + }, + { + "name": "Ordered FFT/Sequential from RN radix2 #2", + "value": 778792851, + "range": "± 1452903", + "unit": "ns/iter" + }, + { + "name": "Ordered FFT/Sequential from NR radix2 #3", + "value": 1413228719, + "range": "± 2908263", + "unit": "ns/iter" + }, + { + "name": "Ordered FFT/Sequential from RN radix2 #3", + "value": 1628675323, + "range": "± 2175364", + "unit": "ns/iter" + }, + { + "name": "Ordered FFT/Sequential from NR radix4 #2", + "value": 1239355624, + "range": "± 4067121", + "unit": "ns/iter" + }, + { + "name": "Ordered FFT/Sequential from NR radix2 #4", + "value": 2953012422, + "range": "± 1921836", + "unit": "ns/iter" + }, + { + "name": "Ordered FFT/Sequential from RN radix2 #4", + "value": 3412163872, + "range": "± 5663557", + "unit": "ns/iter" + }, + { + "name": "Ordered FFT/Sequential from NR radix2 #5", + "value": 6186016817, + "range": "± 3259567", + "unit": "ns/iter" + }, + { + "name": "Ordered FFT/Sequential from RN radix2 #5", + "value": 7201494827, + "range": "± 6626059", + "unit": "ns/iter" + }, + { + "name": "Ordered FFT/Sequential from NR radix4 #3", + "value": 5432513849, + "range": "± 29160146", + "unit": "ns/iter" + }, + { + "name": "FFT twiddles generation/natural", + "value": 7653046, + "range": "± 16914", + "unit": "ns/iter" + }, + { + "name": "FFT twiddles generation/natural inversed", + "value": 7713221, + "range": "± 87466", + "unit": "ns/iter" + }, + { + "name": "FFT twiddles generation/bit-reversed", + "value": 9705042, + "range": "± 12359", + "unit": "ns/iter" + }, + { + "name": "FFT twiddles generation/bit-reversed inversed", + "value": 9816983, + "range": "± 20895", + "unit": "ns/iter" + }, + { + "name": "FFT twiddles generation/natural #2", + "value": 18057705, + "range": "± 81423", + "unit": "ns/iter" + }, + { + "name": "FFT twiddles generation/natural inversed #2", + "value": 18009377, + "range": "± 297609", + "unit": "ns/iter" + }, + { + "name": "FFT twiddles generation/bit-reversed #2", + "value": 25387956, + "range": "± 157052", + "unit": "ns/iter" + }, + { + "name": "FFT twiddles generation/bit-reversed inversed #2", + "value": 25224232, + "range": "± 225310", + "unit": "ns/iter" + }, + { + "name": "FFT twiddles generation/natural #3", + "value": 35845003, + "range": "± 50317", + "unit": "ns/iter" + }, + { + "name": "FFT twiddles generation/natural inversed #3", + "value": 36169533, + "range": "± 179291", + "unit": "ns/iter" + }, + { + "name": "FFT twiddles generation/bit-reversed #3", + "value": 66665490, + "range": "± 899261", + "unit": "ns/iter" + }, + { + "name": "FFT twiddles generation/bit-reversed inversed #3", + "value": 69131191, + "range": "± 935195", + "unit": "ns/iter" + }, + { + "name": "FFT twiddles generation/natural #4", + "value": 73087421, + "range": "± 60465", + "unit": "ns/iter" + }, + { + "name": "FFT twiddles generation/natural inversed #4", + "value": 73002776, + "range": "± 238819", + "unit": "ns/iter" + }, + { + "name": "FFT twiddles generation/bit-reversed #4", + "value": 140759163, + "range": "± 381163", + "unit": "ns/iter" + }, + { + "name": "FFT twiddles generation/bit-reversed inversed #4", + "value": 140254600, + "range": "± 1046507", + "unit": "ns/iter" + }, + { + "name": "FFT twiddles generation/natural #5", + "value": 143536787, + "range": "± 472145", + "unit": "ns/iter" + }, + { + "name": "FFT twiddles generation/natural inversed #5", + "value": 143549087, + "range": "± 538319", + "unit": "ns/iter" + }, + { + "name": "FFT twiddles generation/bit-reversed #5", + "value": 278745729, + "range": "± 615578", + "unit": "ns/iter" + }, + { + "name": "FFT twiddles generation/bit-reversed inversed #5", + "value": 278382232, + "range": "± 704401", + "unit": "ns/iter" + }, + { + "name": "Bit-reverse permutation/Sequential", + "value": 15754663, + "range": "± 86517", + "unit": "ns/iter" + }, + { + "name": "Bit-reverse permutation/Sequential #2", + "value": 32836654, + "range": "± 104611", + "unit": "ns/iter" + }, + { + "name": "Bit-reverse permutation/Sequential #3", + "value": 67636168, + "range": "± 402668", + "unit": "ns/iter" + }, + { + "name": "Bit-reverse permutation/Sequential #4", + "value": 135736483, + "range": "± 893552", + "unit": "ns/iter" + }, + { + "name": "Bit-reverse permutation/Sequential #5", + "value": 348810742, + "range": "± 898688", + "unit": "ns/iter" + }, + { + "name": "Polynomial evaluation/Sequential FFT", + "value": 349492581, + "range": "± 913367", + "unit": "ns/iter" + }, + { + "name": "Polynomial evaluation/Sequential FFT #2", + "value": 747364615, + "range": "± 1139813", + "unit": "ns/iter" + }, + { + "name": "Polynomial evaluation/Sequential FFT #3", + "value": 1575916181, + "range": "± 27406431", + "unit": "ns/iter" + }, + { + "name": "Polynomial evaluation/Sequential FFT #4", + "value": 3290217333, + "range": "± 2754410", + "unit": "ns/iter" + }, + { + "name": "Polynomial evaluation/Sequential FFT #5", + "value": 6939608378, + "range": "± 8553273", + "unit": "ns/iter" + }, + { + "name": "Polynomial interpolation/Sequential FFT", + "value": 374444609, + "range": "± 1687180", + "unit": "ns/iter" + }, + { + "name": "Polynomial interpolation/Sequential FFT #2", + "value": 790449198, + "range": "± 2658462", + "unit": "ns/iter" + }, + { + "name": "Polynomial interpolation/Sequential FFT #3", + "value": 1662209147, + "range": "± 2426302", + "unit": "ns/iter" + }, + { + "name": "Polynomial interpolation/Sequential FFT #4", + "value": 3445741838, + "range": "± 2811716", + "unit": "ns/iter" + }, + { + "name": "Polynomial interpolation/Sequential FFT #5", + "value": 7250016816, + "range": "± 3329400", + "unit": "ns/iter" + }, + { + "name": "Polynomial/evaluate", + "value": 20, + "range": "± 0", + "unit": "ns/iter" + }, + { + "name": "Polynomial/evaluate_slice", + "value": 95, + "range": "± 0", + "unit": "ns/iter" + }, + { + "name": "Polynomial/add", + "value": 62, + "range": "± 3", + "unit": "ns/iter" + }, + { + "name": "Polynomial/neg", + "value": 26, + "range": "± 0", + "unit": "ns/iter" + }, + { + "name": "Polynomial/sub", + "value": 87, + "range": "± 0", + "unit": "ns/iter" + }, + { + "name": "Polynomial/mul", + "value": 154, + "range": "± 6", + "unit": "ns/iter" + }, + { + "name": "Polynomial/div", + "value": 360, + "range": "± 3", + "unit": "ns/iter" + }, + { + "name": "Polynomial/div by 'x - b' with generic div", + "value": 767, + "range": "± 5", + "unit": "ns/iter" + }, + { + "name": "Polynomial/div by 'x - b' with Ruffini", + "value": 23, + "range": "± 50", + "unit": "ns/iter" + }, + { + "name": "Polynomial/evaluate #2", + "value": 13, + "range": "± 0", + "unit": "ns/iter" + }, + { + "name": "Polynomial/evaluate_with", + "value": 70, + "range": "± 0", + "unit": "ns/iter" + }, + { + "name": "Polynomial/merge", + "value": 127, + "range": "± 1", + "unit": "ns/iter" + }, + { + "name": "Polynomial/add #2", + "value": 9450, + "range": "± 889", + "unit": "ns/iter" + }, + { + "name": "Polynomial/mul #2", + "value": 46, + "range": "± 0", + "unit": "ns/iter" + }, + { + "name": "Polynomial/evaluate 3", + "value": 1, + "range": "± 0", + "unit": "ns/iter" + }, + { + "name": "Polynomial/evaluate 4", + "value": 9037, + "range": "± 816", + "unit": "ns/iter" + }, + { + "name": "Polynomial/evaluate 5", + "value": 1, + "range": "± 0", + "unit": "ns/iter" + }, + { + "name": "Polynomial/evaluate 6", + "value": 1, + "range": "± 0", + "unit": "ns/iter" + }, + { + "name": "Polynomial/evaluate 7", + "value": 1, + "range": "± 0", + "unit": "ns/iter" + }, + { + "name": "Polynomial/evaluate 8", + "value": 1, + "range": "± 0", + "unit": "ns/iter" + }, + { + "name": "Polynomial/evaluate 9", + "value": 1, + "range": "± 0", + "unit": "ns/iter" + }, + { + "name": "Polynomial/evaluate 10", + "value": 1, + "range": "± 0", + "unit": "ns/iter" + } + ] } ] }