Fiche de programmation CUDA C

Avis de non-responsabilité : cet article est destiné à une étude personnelle uniquement et n'a aucune signification de référence.

1. Utilisez nvidia-smi pour interroger les informations du GPU

a. Confirmez le nombre de GPU installés dans le système et l'ID de périphérique de chaque GPU, nvidia-smi -L

nvidia-smi -L
GPU 0: A100-SXM-80GB (UUID: GPU-42623e9e-98bd-9ee8-8190-ecbaaf122dd6)

b. Utilisez la commande suivante pour obtenir les détails du GPU 0, nvidia-smi -q -i 0

nvidia-smi -q -i 0

==============NVSMI LOG==============

Timestamp                                 : Tue Jul  4 11:16:41 2023
Driver Version                            : 460.91.03
CUDA Version                              : 11.2

Attached GPUs                             : 1
GPU 00000000:00:07.0
    Product Name                          : A100-SXM-80GB
    Product Brand                         : NVIDIA
    Display Mode                          : Enabled
    Display Active                        : Disabled
    Persistence Mode                      : Enabled
    MIG Mode
        Current                           : Disabled
        Pending                           : Disabled
    Accounting Mode                       : Disabled
    Accounting Mode Buffer Size           : 4000
    Driver Model
        Current                           : N/A
        Pending                           : N/A
    Serial Number                         : 1322821033891

C. Afficher uniquement les informations sur la mémoire de l'appareil

nvidia-smi -q -i 0 -d MEMORY | tail -n 5
    BAR1 Memory Usage
        Total                             : 131072 MiB
        Used                              : 1 MiB
        Free                              : 131071 MiB

d. Afficher uniquement les informations d'utilisation de l'appareil

nvidia-smi -q -i 0 -d UTILIZATION | tail -n 4
        Max                               : 0 %
        Min                               : 0 %
        Avg                               : 0 %

2. Quelques opérations de ndarray

x = torch.arange(12)
tensor([ 0,  1,  2,  3,  4,  5,  6,  7,  8,  9, 10, 11])
X = x.reshape(3, 4)
tensor([[ 0,  1,  2,  3],
        [ 4,  5,  6,  7],
        [ 8,  9, 10, 11]])
Y = x.reshape(3,-1)


torch.cat((X, Y), dim=0) #行相加
tensor([[ 0.,  1.,  2.,  3.],
        [ 4.,  5.,  6.,  7.],
        [ 8.,  9., 10., 11.],
        [ 2.,  1.,  4.,  3.],
        [ 1.,  2.,  3.,  4.],
        [ 4.,  3.,  2.,  1.]])
torch.cat((X, Y), dim=1) #列相加
tensor([[ 0.,  1.,  2.,  3.,  2.,  1.,  4.,  3.],
        [ 4.,  5.,  6.,  7.,  1.,  2.,  3.,  4.],
        [ 8.,  9., 10., 11.,  4.,  3.,  2.,  1.]])


X[1:3]  #取第2行,第3行
tensor([[ 4.,  5.,  6.,  7.],
        [ 8.,  9., 10., 11.]])
X[1:]
tensor([[ 4.,  5.,  6.,  7.],
        [ 8.,  9., 10., 11.]])

X[:,-1]  #取第几列
tensor([ 3.,  7., 11.])
X[:,]
X[:]
###取全部
tensor([[ 0.,  1.,  2.,  3.],
        [ 4.,  5.,  6.,  7.],
        [ 8.,  9., 10., 11.]])

Je suppose que tu aimes

Origine blog.csdn.net/qq_33083551/article/details/131531216
conseillé
Classement