Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

188
Visualizações
¿Por qué numpy.view (bool) hace que numpy.logical_and sea significativamente más rápido?

Al pasar un numpy.ndarray de uint8 a numpy.logical_and , se ejecuta significativamente más rápido si aplico numpy.view(bool) a sus entradas.

 a = np.random.randint(0, 255, 1000 * 1000 * 100, dtype=np.uint8) b = np.random.randint(0, 255, 1000 * 1000 * 100, dtype=np.uint8) %timeit np.logical_and(a, b) 126 ms ± 1.17 ms per loop (mean ± std. dev. of 7 runs, 10 loops each) %timeit np.logical_and(a.view(bool), b.view(bool)) 20.9 ms ± 110 µs per loop (mean ± std. dev. of 7 runs, 10 loops each)

¿Alguien puede explicar por qué sucede esto?

Además, ¿por qué numpy.logical_and no aplica automáticamente view(bool) a una matriz de uint8 ? (¿Hay alguna situación en la que no debamos usar view(bool) ?)

EDITAR:

Parece que este es un problema con el entorno de Windows. Acabo de intentar lo mismo en el contenedor docker oficial de python (que es debian) y no encontré ninguna diferencia entre ellos.

Mi entorno:

  • Sistema operativo: Windows 10 Pro 21H2
  • CPU: AMD Ryzen 9 5900X
  • Python: Python 3.10.2 (tags/v3.10.2:a58ebcc, 17 de enero de 2022, 14:12:15) [MSC v.1929 64 bit (AMD64)] en win32
  • numpy: 1.22.2
over 4 years ago · Santiago Trujillo
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda