jyh-zero / app.py
hiascend's picture
Update app.py
7d4b235 verified
import gradio as gr
import spaces # 导入spaces时会应用torch补丁
import torch
import os
spaces.zero.torch.unpatch() # 手动调用解除torch补丁方法
os.environ['CUDA_VISIBLE_DEVICES'] = 'MIG-2f70e35e-577e-52c1-9054-bc9f9d04054e'
print('cuda visible devices: ' + str(os.getenv('CUDA_VISIBLE_DEVICES')))
print('cuda avaliable: ' + str(torch.cuda.is_available()))
print('cuda device count: ' + str(torch.cuda.device_count()))
print('cuda device name: ' + str(torch.cuda.get_device_name()))
print('cuda device capability: ' + str(torch.cuda.get_device_capability()))
torch.set_default_device('cuda')
zero = torch.Tensor([0]).cuda()
one = torch.ones(2, 2, device='cuda')
two = torch.matmul(one, one).cuda()
def print_device():
print('cuda avaliable: ' + str(torch.cuda.is_available()))
print('zero device: ' + str(zero.device))
print('one device: ' + str(one.device))
print('two device: ' + str(two.device))
print_device() # cpu
@spaces.GPU
def greet(n):
print('on zero gpu')
print_device() # cuda
return f"Hello {zero + n} Tensor"
gr.Interface(fn=greet, inputs=gr.Number(), outputs=gr.Text()).launch()