Very poor performance on simple taylor function
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
- Error
- Claridad
- Bastante claro
- Estado de actividad
- Estancado
- Stack tecnológico
- julia
- Área
- performance
Línea de trabajo
Comienza con el Project, Manifest y el script de pruebas del gist enlazado, y ejecuta el benchmark de Taylor con N=10^4. Compara el tiempo de ejecución y el comportamiento de la pila de Diffractor con los resultados de Enzyme, Zygote y ForwardDiff descritos en la issue. Se considera terminado cuando el benchmark ya no muestra la ralentización grave ni el desbordamiento de pila reportados.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
In Chris' recent SciML video, at this timestamp he showcases a little AD benchmark. Summarizing, differentiating the function:
function taylor(x, N)
sum = 0 * x
for i = 1:N
sum += x^i / i
end
return sum
end
Shows pretty poor performance in Diffractor. I've created a gist that contains a Project, Manifest and test script to showcase the issue. You can increase N to get harder and harder problems. Note that I was unable to get Enzyme working on master (perhaps I need to check out the master branch) and Diffractor dies with a stack overflow if N is too large.
For N=10^4, we get timings of Enzyme's code running in <1ms, and Diffractor taking more than 300ms. Zygote and ForwardDiff are both well under 10ms.
- Lenguaje dominante
- Julia
- Estrellas
- 453
- Forks
- 33
- Métricas de merge de PR
- Sin PR fusionados en 30 d
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 JuliaDiff/Diffractor.jl
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 25/100
JuliaDiff/Diffractor.jl#302 · 2 comentarios ·
-
Wrong derivative of exp(cos(x))Abierto
Dificultad 3/5 1-2 días Aptitud para principiantes 52/100
JuliaDiff/Diffractor.jl#294 ·
-
Incorrect Jacobian calculationAbiertobug
Dificultad 4/5 3-5 días Aptitud para principiantes 35/100
JuliaDiff/Diffractor.jl#293 ·
-
bug
Dificultad 4/5 3-5 días Aptitud para principiantes 35/100
JuliaDiff/Diffractor.jl#290 · 8 comentarios ·
-
Dificultad 3/5 1-2 días Aptitud para principiantes 35/100
JuliaDiff/Diffractor.jl#280 · 1 comentario ·
Todos los issues de JuliaDiff/Diffractor.jl
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
JuliaGPU/KernelAbstractions.jl#897 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
oscar-system/GAP.jl#1455 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
JuliaAI/MLJTransforms.jl#85 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
SciML/OrdinaryDiffEq.jl#4875 ·
Los mantenedores suelen responder en 4 días