РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
⊗pytoSpDvAc 57 of 82 menu
◀ ▶

Половинная точность в PyTorch

Контекст autocast на время блока выбирает тип для ряда операций. На видеокарте часто получают половинную точность и экономят память.

На процессоре тип устройства в блоке задают как процессор. Умножим два дробных тензора внутри контекста и выведем тип результата:

import torch with torch.autocast(device_type="cpu"): left = torch.tensor([1.0]) right = torch.tensor([2.0]) product = left * right print(product.dtype) # выведет torch.float32

На этой машине внутри блока тип остаётся float32: процессор не переключает умножение на float16. На карте картина может быть другой.

Внутри контекста для процессора сложите тензоры 1.0 и 2.0 и выведите тип суммы.

Вне контекста умножьте 3.0 на 4.0, затем повторите умножение внутри блока для процессора и выведите оба типа результата через пробел.

Соберите ряд из 0.5 и 1.5, внутри контекста для процессора сложите его с единицей и выведите тип итога.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить