Использование 2 графических процессоров в forgeuiPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Использование 2 графических процессоров в forgeui

Сообщение Anonymous »

У меня есть RTX 4080 Super и Quadro RTX 6000, но я хочу использовать 2 графических процессора в одном процессе одновременно, но независимо от того, как я пытаюсь оптимизировать код, использую только один из 2 графических процессоров в создании изображений. Я прочитал несколько форумов и прочитал, что можно использовать 2 графических процессора. По сути, я просто хочу использовать память двух графических процессоров и 3D-загрузку в одном и том же процессе.
Вот код, который я пробовал:
import os
import torch
import torch.nn as nn
from torch.nn.parallel import DataParallel
from modules import launch_utils

args = launch_utils.args
python = launch_utils.python
git = launch_utils.git
index_url = launch_utils.index_url
dir_repos = launch_utils.dir_repos

commit_hash = launch_utils.commit_hash
git_tag = launch_utils.git_tag

run = launch_utils.run
is_installed = launch_utils.is_installed
repo_dir = launch_utils.repo_dir

run_pip = launch_utils.run_pip
check_run_python = launch_utils.check_run_python
git_clone = launch_utils.git_clone
git_pull_recursive = launch_utils.git_pull_recursive
list_extensions = launch_utils.list_extensions
run_extension_installer = launch_utils.run_extension_installer
prepare_environment = launch_utils.prepare_environment
configure_for_tests = launch_utils.configure_for_tests
start = launch_utils.start

def main():
if args.dump_sysinfo:
filename = launch_utils.dump_sysinfo()
print(f"Sysinfo saved as {filename}. Exiting...")
return

# Set CUDA devices
cuda_visible_devices = "0,1"
os.environ["CUDA_VISIBLE_DEVICES"] = cuda_visible_devices

# Verify GPU availability
print(f"Using {torch.cuda.device_count()} GPUs")
for i in range(torch.cuda.device_count()):
print(f"Device {i}: {torch.cuda.get_device_name(i)}")

# Example model (replace with your actual model)
model = nn.Sequential(
nn.Linear(10, 10),
nn.ReLU(),
nn.Linear(10, 1)
)

# Use Data Parallelism to utilize both GPUs
if torch.cuda.device_count() > 1:
model = DataParallel(model, device_ids=[0, 1])

model.to('cuda')

# Handle VRAM warnings and environment variables
vram_state = "NORMAL_VRAM"
device = "cuda:1"
total_vram = 16376
total_ram = 32458
pytorch_version = "2.3.1+cu121"
print(f"Launching Web UI with arguments: --device {cuda_visible_devices}")
print(f"Total VRAM {total_vram} MB, total RAM {total_ram} MB")
print(f"pytorch version: {pytorch_version}")
print(f"Set vram state to: {vram_state}")
print(f"Device: {device} NVIDIA GeForce RTX 4080 SUPER : native")
print("Hint: your device supports --cuda-malloc for potential speed improvements.")
print("VAE dtype preferences: [torch.bfloat16, torch.float32] -> torch.bfloat16")
print("CUDA Using Stream: False")

# Launch the web UI
start()

if __name__ == "__main__":
main()


Подробнее здесь: https://stackoverflow.com/questions/790 ... in-forgeui
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»