I have been developing a neural network API for GPUs. It is based on CUDA technology and I tried to exploit the full potential of the computer.
Most of us, do not know the real potential of GPUs in AI. This kind of hardware is specialized in logical operations and it was used by the industry of engines and videogames. Some years ago, we have experienced a ‘boom’ in graphics cards, the improvement in speed, price and the ease of programming had triggered a new mother-lode.
GPUs provide a bunch of parallelism algorithms to improve performance.
As we know, neural networks use matrix-to-matrix and matrix-to-vector operations. We can take advance in the optimization of them. Unfortunately, feed-forward and backpropagation are linear functions, they can neither be optimized nor parallelized.
LiDAR (Light Imaging, Direction And Ranging) is a method that measures the distance to a target by illuminating the target with pulsed laser light and measuring the reflected pulses with a sensor. Autonomous cars take advantage of this new technology.
RSA encryption and decryption algorithm and implementation in C++
RSA is an algorithm used by modern computers to encrypt and decrypt messages. Modern encryption is mostly based on this algorithm.
It is an asymmetric cryptographic algorithm.
Asymmetric means that there are two different keys. This is also called public key cryptography because one of the keys can be given to anyone. The other key must be kept private, Elliptic curve algorithm uses asymmetric cryptography also.
The algorithm is based on the fact that finding the factors of a large composite number is difficult: when the integers are prime numbers, the problem is called prime factorization. It is also a key pair (public and private key) generator.