Aan de slagGa gratis aan de slag

De snelheid van katten

Je werkt aan een nieuwe webservice die Instagram-feeds verwerkt om te bepalen welke foto's katten bevatten (vraag niet waarom — dit is het internet). De code die de data verwerkt is trager dan je zou willen, dus je probeert hem te tunen zodat hij sneller draait. Gegeven een afbeelding, image, heb je twee functies die deze kunnen verwerken:

  • process_with_numpy(image)
  • process_with_pytorch(image)

Je collega heeft een contextmanager, timer(), geschreven die uitprint hoe lang de code binnen het contextblok erover doet. Ze stelt voor om die te gebruiken om te zien welke van de twee opties sneller is. Meet de tijd van elke functie om te bepalen welke je in je webservice moet gebruiken.

Deze oefening maakt deel uit van de cursus

Functies schrijven in Python

Cursus bekijken

Oefeninstructies

  • Gebruik de contextmanager timer() om te meten hoe lang process_with_numpy(image) erover doet.
  • Gebruik de contextmanager timer() om te meten hoe lang process_with_pytorch(image) erover doet.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

image = get_image_from_instagram()

# Time how long process_with_numpy(image) takes to run
____ ____:
  print('Numpy version')
  process_with_numpy(image)

# Time how long process_with_pytorch(image) takes to run
____ ____:
  print('Pytorch version')
  process_with_pytorch(image)
Code bewerken en uitvoeren