Jump to content
Pedro Vieira

OpenCL e C - multiplicação de matrizes

Recommended Posts

Pedro Vieira

Boa tarde,

Encontro-me neste momento com um projeto "simples" em mãos que consiste em multiplicar 2 matrizes em OpenCL devido ao poder que o OpenCL tem no ramo de MultiThreading.

Nunca ouvi falar de OpenCL e é a primeira vez que pego numa coisa destas, no entanto o meu professor falou-me que tenho que utilizar a linguagem C neste projeto para interagir com o OpenCL .

De uma forma simples, alguém me consegue explicar como é que isto funciona ? se tenho que criar a app em openCl primeiro e depois chamar a app em OpenCL ou crio uma app em C que usa codigo OpenCL ?

Cumprimentos,

PV

Share this post


Link to post
Share on other sites
Rui Carlos

Não tenho experiência com OpenCL, mas penso que segue um estilo semelhante ao CUDA, em que basicamente tens um programa em C aumentado com extensões específicas do CUDA (OpenCL). A função main está encarregue de chamar o kernel computacional que irá tirar partido do multithreading acessível pelo CUDA (OpenCL).

Share this post


Link to post
Share on other sites
Pedro Vieira

Obrigado pela vossa ajuda, já tinha visto o link apresentado aquie já andei a tentar mais um pouco e consegui fazer alguma coisa no entanto, preciso de efetuar uma multiplicação de matrizes utilizando C++ e opencl

Se alguém tivesse um exemplo de codigo para isso que pudesse analisar seria excelente.

O que necessito é de um codigo em C++ que envie 3 matrizes para o opencl em que 2 delas serão multiplicadas e a 3ª terá o resultado da multiplicação para enviar por buffer para o c++..

Cumprimentos,

PV

Share this post


Link to post
Share on other sites
Rui Carlos

Vê se estes slides ajudam. Mostram várias implementações em OpenCL, a primeira bastante simples, mas pouco eficiente, e depois apresenta várias optimizações que podem ser feitas para o modelo de memória dos GPUs.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.