Use Codspeed for testing
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 35/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Bastante claro
- Estado de actividad
- Estancado
- Stack tecnológico
- rust
- Área
- ci-cd, performance, testing-qa
Línea de trabajo
Revisa el prototipo de la pull request #1 de bifurcation/KEMs, especialmente el commit 30a1c599b3e8fb114165e475eafbfde8e7922575, y después compara sus mediciones con la pull request #3 y el informe de Codspeed enlazado. Comprueba la configuración de los benchmarks usando criterion.rs y el enfoque más rápido sugerido en la pull request #20 accidental. Se considera terminado cuando el repositorio usa Codspeed con la configuración requerida de RustCrypto y produce mediciones de rendimiento fiables y eficientes.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Codspeed is a performance testing tool designed to produce highly consistent performance measurements. It also integrates very cleanly with criterion.rs.
I prototyped this out in https://github.com/bifurcation/KEMs/pull/1. (Unfortunately, that also includes a bunch of noise due to main branch divergence. The main commit is https://github.com/bifurcation/KEMs/pull/1/commits/30a1c599b3e8fb114165e475eafbfde8e7922575.) In addition to those code changes, an admin for the RustCrypto org would have to enable Codspeed for the repo and provision the required secret.
I'm having a little trouble having confidence in the measurements, though. Looking at https://github.com/bifurcation/KEMs/pull/3 and its Codspeed report, it is measurably slower on my local machine, but Codspeed reports marginal performance improvements. The execution times are also off by about an order of magnitude.
keygen time: [37.873 µs 37.899 µs 37.935 µs]
change: [+1.6945% +2.8309% +3.4566%] (p = 0.00 < 0.05)
Performance has regressed.
encapsulate time: [36.971 µs 37.129 µs 37.401 µs]
change: [+1.4643% +1.7390% +2.1480%] (p = 0.00 < 0.05)
Performance has regressed.
decapsulate time: [45.140 µs 45.368 µs 45.625 µs]
change: [+0.5023% +0.9468% +1.4248%] (p = 0.00 < 0.05)
Change within noise threshold.
round_trip time: [109.86 µs 110.04 µs 110.27 µs]
change: [+1.3724% +1.8421% +2.2354%] (p = 0.00 < 0.05)
Performance has regressed.
The version in that prototype is pretty slow, because it builds everything afresh, as @newpavlov noted in the accidental PR #20. If we're going to do this, we should do something like @newpavlov suggests to make it faster.
- Lenguaje dominante
- Rust
- Estrellas
- 118
- Forks
- 58
- Merge medio
- 29 min
- PR fusionados (30 d)
- 2
Preparar el entorno
Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de RustCrypto/KEMs
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 35/100
RustCrypto/KEMs#395 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 4/5 3-5 días Aptitud para principiantes 55/100
RustCrypto/KEMs#389 · 3 comentarios ·
Los mantenedores suelen responder en 1 día
-
frodo-kem: `Algorithm::encryption_key_from_decryption_key` skips both of the validations its siblings performPosiblemente ocupada @cipherprofessor la tomó hace 25 días. Abierto
Dificultad 4/5 3-5 días Aptitud para principiantes 58/100
RustCrypto/KEMs#381 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 20/100
RustCrypto/KEMs#346 · 2 comentarios ·
Los mantenedores suelen responder en 1 día
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 20/100
RustCrypto/KEMs#328 ·
Los mantenedores suelen responder en 1 día
Todos los issues de RustCrypto/KEMs
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
-
area: compat area: parsing bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
reubeno/brush#1526 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Volume eject does not refuse system, root or /home mountsPosiblemente ocupada @bernardopg la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
spacedriveapp/spacedrive#3159 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 82/100