Thread wakening may be bottom neck for large core systems
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Aptitud para principiantes
- 25/100
- Tipo de issue
- Error
- Claridad
- Necesita aclaración
- Estado de actividad
- Estancado
- Stack tecnológico
- cpp
- Área
- backend, performance
Línea de trabajo
Comienza con las trazas de Tracy descritas en el issue e investiga la ruta de activación de los workers alrededor de thread::yield(). Reproduce la recogida retrasada de tareas en SG2042 y, después, mide si una estrategia de polling más activa mejora el rendimiento sin impedir que los workers queden inactivos mientras esperan la entrada del usuario.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Result: boost from 3.6~8token/s to 4.2~4.3token/s on SG2042.
Analyze: I added tracy to trace execution in details. I observed that worker wakening is problematic. There are some workers picked up task after the completion of other workers.
That means the execution time is as twice as the expected sometimes. I guess that it is caused by thread::yield(), which switched out the busy waiting loop.
I am thinking about to make a higher/busier performance poll, while being able to switch to an idle state when waiting for user input.
- Lenguaje dominante
- C++
- Estrellas
- 752
- Forks
- 94
- 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 MegEngine/InferLLM
-
SG2042 服务器 make 出错Abierto
Dificultad 4/5 3-5 días Aptitud para principiantes 30/100
-
无法加载模型bin或者guff模型Abierto
Dificultad 4/5 3-5 días Aptitud para principiantes 25/100
-
有打算支持qwen吗Abierto
Dificultad 5/5 Más de una semana Aptitud para principiantes 25/100
-
在树莓派3b+上部署,出现无法打开模型的问题Abierto
Dificultad 4/5 3-5 días Aptitud para principiantes 20/100
-
这个有windows的部署教程吗Abierto
Dificultad 3/5 1-2 días Aptitud para principiantes 35/100
Todos los issues de MegEngine/InferLLM
Issues similares
-
refactor
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
Los mantenedores suelen responder en 1 día
-
【问题】在文件树重命名文件,发现无法用鼠标选中一段文字Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 76/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
Los mantenedores suelen responder en 1 día
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 65/100
Los mantenedores suelen responder en 1 día