python / python/cpython

use argument clinic for more socket functions

Aberta
#135,748 4 comentários 0 reações 0 responsáveis Ver no GitHub

Ninguém assumiu esta issue ainda.

extension-modules performance topic-argument-clinic topic-socket type-refactor
Linguagem predominante
Python
Estrelas
77.2k
Forks
36k
Métricas de merge de PRs
Métricas de PR pendentes

Descrição

Some methods of socket still uses VARARGS calling convention which is slow, AC can be used to simplify arg parsing as well as speed up the arg parsing. This is important for asyncio as it heavily calls these API.

This shows up in asyncio flame graphs as well:

Image

Linked PRs
  • gh-135749
  • gh-155257

Guia de contribuição

Abrir o guia de contribuição

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Direção de pesquisa

Comece revisando os métodos de socket que ainda usam a convenção de chamada VARARGS e os PRs vinculados gh-135749 e gh-155257. Use o flame graph do asyncio como contexto; considera-se concluído quando a análise dos argumentos de socket relevante usa Argument Clinic e melhora o overhead de parsing do asyncio relatado.

Escrita pelo modelo de indexação a partir do texto da issue.

Avaliação

Stack de tecnologia
c, python
Domínio
networking, performance
Tipo de issue
Refatoração
Dificuldade
4/5
Tempo estimado
3-5 dias
Status de atividade
Estagnada
Clareza
Precisa de esclarecimento
Facilidade para iniciantes
25/100

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.