python / python/cpython

Avoid releasing the GIL in nonblocking socket operations

Aberta
#89,977 4 comentários 1 reação 0 responsáveis Ver no GitHub

Ninguém assumiu esta issue ainda.

3.12 performance topic-socket
Linguagem predominante
Python
Estrelas
77.2k
Forks
36k
Métricas de merge de PRs
Métricas de PR pendentes

Descrição

BPO 45819
Nosy @rhettinger, @tiran, @asvetlov, @1st1, @jakirkham, @jcrist
PRs
  • python/cpython#29579
  • Files
  • bench.py
  • Note: these values reflect the state of the issue at the time it was migrated and might not reflect the current state.

    Show more details

    GitHub fields:

    assignee = None
    closed_at = None
    created_at = <Date 2021-11-16.18:51:40.323>
    labels = ['3.11', 'expert-asyncio', 'expert-IO', 'performance']
    title = 'Avoid releasing the GIL in nonblocking socket operations'
    updated_at = <Date 2022-02-02.23:18:52.305>
    user = 'https://github.com/jcrist'
    

    bugs.python.org fields:

    activity = <Date 2022-02-02.23:18:52.305>
    actor = 'jakirkham'
    assignee = 'none'
    closed = False
    closed_date = None
    closer = None
    components = ['IO', 'asyncio']
    creation = <Date 2021-11-16.18:51:40.323>
    creator = 'jcristharif'
    dependencies = []
    files = ['50443']
    hgrepos = []
    issue_num = 45819
    keywords = ['patch']
    message_count = 3.0
    messages = ['406422', '406431', '406436']
    nosy_count = 6.0
    nosy_names = ['rhettinger', 'christian.heimes', 'asvetlov', 'yselivanov', 'jakirkham', 'jcristharif']
    pr_nums = ['29579']
    priority = 'normal'
    resolution = None
    stage = 'patch review'
    status = 'open'
    superseder = None
    type = 'performance'
    url = 'https://bugs.python.org/issue45819'
    versions = ['Python 3.11']
    

    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 lendo bench.py e o PR vinculado python/cpython#29579; em seguida, rastreie as operações de socket não bloqueantes cobertas pelo benchmark. O trabalho estará concluído quando o comportamento solicitado de liberação do GIL tiver sido alterado para essas operações e o benchmark ainda demonstrar o comportamento de desempenho pretendido.

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

    Avaliação

    Stack de tecnologia
    python
    Domínio
    backend
    Tipo de issue
    Refatoração
    Dificuldade
    4/5
    Tempo estimado
    3-5 dias
    Status de atividade
    Estagnada
    Clareza
    Razoavelmente clara
    Facilidade para iniciantes
    20/100

    Receba novas issues na sua caixa de entrada

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