Ir ao conteúdo

Posts recomendados

Postado

@InicianteOtaku Olá. Só um pequeno exemplo para ter uma ideia de como funciona. A função mudar_cor é executada por uma thread:

#include <stdio.h>
#include <pthread.h>
#include <unistd.h> // para a função sleep. No Windows é windows.h e Sleep

typedef enum {VERMELHO, VERDE} Cor;

Cor cor = VERMELHO;
  
void *mudar_cor(void *arg) {

    int i;

    for (i = 0; i < 10; i++) {

        cor = !cor;

        fprintf(stdout, "Cor atual: %s\n", cor ? "VERDE" : "VERMELHO");

        sleep(2);
    }
}

int main() {

    pthread_t thread;

    pthread_create(&thread, NULL, mudar_cor, NULL); // crio a thread e ela começa a executar

    pthread_join(thread, NULL); // aqui espero ela terminar a execução, ao término do for

    return 0;
}
  

Se é isso mesmo ok. Passei um pequeno exemplo em C, mas se o interesse é em C++ aí para mim inda não vai :)

Postado
Em 04/12/2019 às 11:44, InicianteOtaku disse:

Alguém tem ideia de como utilizar as threads de minha IGPU , pois vejo que os jogos utilizam ela e eu gostaria de utilizar para outros fins, se alguém souber me ajuda ai.

 

Cada fabricante tem um kit de desenvolvimento para criar aplicações desse tipo. E alguns pacotes para desenvolvimento de aplicações também incorporam isso no código.

 

Se você usa C ou C++ é bem imediato e não por acaso os jogos são escritos em geral nessas linguagens.

 

O mundo é bem pequeno no caso desses kits: a NVIDIA tem uma tecnologia, CUDA, a AMD tem outra, AOCC, a Intel outra.

E você pode usar OpenGL ou DirectX que acessam a GPU também. E na prática os pacotes de desenvolvimento de jogos também, como Unity e Unreal Engine

 

Muito disso é grátis porque há grande interesse dos fabricantes em que se use esse tipo de ferramenta

 

Veja um exemplo simples e comentado em C++ neste blog da NVIDIA por exemplo https://devblogs.nvidia.com/even-easier-introduction-cuda/

 

Aqui o software da NVIDIA: https://developer.nvidia.com/cuda-toolkit

 

E da AMD: https://developer.amd.com/tools-and-sdks/

 

E da Intel: https://software.intel.com/en-us/opencl-sdk

 

E do DirectX da Microsoft: https://support.microsoft.com/pt-br/help/179113/how-to-install-the-latest-version-of-directx

 

E do OpenGL: https://www.khronos.org/opengl/wiki/Getting_Started#Downloading_OpenGL

 

O exemplo #2 não é o que você quer. Threads rodam na CPU.

 

 

 

 

  • Curtir 1
  • Obrigado 2

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!