Ray tracing

Photorealism is a technique aiming at obtaining artificial images indistinguishable from natural ones.

Photorealistic images require the full simulation of light propagation, reflection and refraction from a light source, passing through the surfaces involved in the illumination until the light reaches the human eye. All the electromagnetic properties…


The CUDA workflow followed by many programmers consists of writing a code by distributing it in various .cpp and .cu files, where the .cu files contain the __global__ functions, while the.cpp …


Download the latest version of the NVIDIA Optix SDK. As of April 2021, the latest version is 7.2.0. Check the driver requirements. Version 7.2.0 requires NVIDIA R456.71 driver or newer for Windows. The download requires setting up an NVIDIA developer account.

Windows installation

Execute the NVIDIA-OptiX-SDK-7.2.0-win64.exe file. It will create…


CODEX

Recently, in the story The evolution of a GPU: from gaming to computing, the hystorical evolution of CPUs and GPUs has been discussed and how the GPUs can be significantly more powerful than commercial CPUs underlined. …


In this post, we provide an introduction to the PyCUDA library and to the Google Colaboratory environment and a short PyCUDA unit sample that can be also run on Google Colab.

What is PyCUDA?

PyCUDA is a library developed by Andreas Klöckneret al. allowing to write CUDA codes and compiling…


CODEX

Growth of computing power of CPUs and GPUs

The above image shows the increase of computing power in time concerning CPUs and GPUs and highlights how the computational capabilities of GPUs grow faster than those of CPUs.

Today, the number of Floating Point OPerations (FLOP) per second (FLOPS) performed by a GPU can be easily reach the tents…


Have you decided to use Tensorflow for Machine Learning applications, but you can’t make heads or tails of it? Do you need the basic principles and few elementary examples to start tinkering? This post is for you!

Simple examples to break the ice with TensorFlow will be discussed. …


Among the most common technical and scientific numerical operations, matrix multiplication occupies one of the top positions.

In Python, matrix multiplication is immediately possible using the dot routine of numpy library. But how performing matrix multiplications on a GPU using PyCUDA?

PyCUDA offers the possibility of interfacing codes with already…


PyCUDA

PyCUDA is a very useful tool to embed low level programming on Graphics Processing Units (GPUs) with CUDA in a higher level programming framework provided by Python. It makes available a whole bunch of facilities to perform a step-by-step code debugging by checking intermediate variable values using breakpoints, simple prints…

Vitality Learning

We are teaching, researching and consulting parallel programming on Graphics Processing Units (GPUs) since the delivery of CUDA. We also play Matlab and Python.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store