Skip to content

Instantly share code, notes, and snippets.

@klgraham
Last active February 6, 2022 19:18
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save klgraham/26d82caa335b89750796c0531f9e81e4 to your computer and use it in GitHub Desktop.
Save klgraham/26d82caa335b89750796c0531f9e81e4 to your computer and use it in GitHub Desktop.
Testing RTX 3090 for deep learning
# Modified example from: https://huggingface.co/facebook/detr-resnet-50
from transformers import DetrFeatureExtractor, DetrForObjectDetection
from PIL import Image
import requests
import torch
print("GPU is available:", torch.cuda.is_available())
#device = torch.device("cuda:0" if torch.cuda.is_available() else "cpu")
url = 'http://images.cocodataset.org/val2017/000000039769.jpg'
image = Image.open(requests.get(url, stream=True).raw)
feature_extractor = DetrFeatureExtractor.from_pretrained('facebook/detr-resnet-50')
model = DetrForObjectDetection.from_pretrained('facebook/detr-resnet-50')
inputs = feature_extractor(images=image, return_tensors="pt")
# On CPU (not batched)
with torch.no_grad():
for i in range(50):
outputs = model(**inputs)
logits = outputs.logits
bboxes = outputs.pred_boxes
# On GPU (not batched)
inputs.to("cuda:0")
model.to("cuda:0")
with torch.no_grad():
for i in range(50):
outputs = model(**inputs)
logits = outputs.logits
bboxes = outputs.pred_boxes
# On CPU (batched)
image_list = [image for i in range(32)]
inputs = feature_extractor(images=image_list, return_tensors="pt")
model = model.to("cpu")
with torch.no_grad():
for i in range(2):
outputs = model(**inputs)
logits = outputs.logits
bboxes = outputs.pred_boxes
# On GPU (batched)
inputs.to("cuda:0")
model.to("cuda:0")
with torch.no_grad():
for i in range(2):
outputs = model(**inputs)
logits = outputs.logits
bboxes = outputs.pred_boxes
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment