Tutorial programación de GPU CUDA en C++

Introducción

En esta guida, vamos a explorar el poder de una GPU programada en C++. Los desarrolladores podran esperar un rendimiento increible con C++, y acceder al poder fenomenal de la GPU con una lenguage de bajo nivel puede generar algunas de los computos mas rápidos actualmente disponibles.

Requerimientos.

Si bien cualquier computadora capaz de correr una version moderna de Linux puede soportar un compilador de C++, vas a necesitar una placa de video baada en NVIDIA. Si no tienes una GPU, puedes activar una instancia con Amazon Web Services o cualquier otro proveedor de servicios en la nube que prefieras.

Si te decides por una máquina física, aseguraté de tener instalados los drivers propietarios de NVDIA instalados. Puedes encontrar la información para esto en: https://linuxhint.com/install-nvidia-drivers-linux/

Además del driver, necesitaras el toolkit de CUDA. En este ejemplo vamos...

Leer mas...

¿Qué diferencia hay entre bin y sbin?

Seguramente, alguna vez te ha llamado la atención la diferencia entre bin y sbin. Basicaménte y como regla memotécnica podemos decir que la ‘s’ en sbin significa “super usuario”(o “superuser”). Es decir que son binarios que no son ejecutados por usuarios normales.

Como hábras notado, hay diferentes directorios bin en Linux. La mejor referencia que he encontrado para entender las numerosas carpetas que integran el sistema Linux es man hier. Este provee una breve explicación del estándar de jerarquía del sistema de archivos (o FHS, del inglés Filesystem Hierarchy Standard) de Linux. Le traigo un breve resumen de las definiciones de los diferentes directorios bin y sbin que nos podemos encontrar:

/bin Este directorio contiene ejecutables que son necesarios en el modo de un solo usuario para levantar o reparar el sistema.

/sbin Como /bin, este directorio contiene los comandos...

Leer mas...

Programacion de sockets en lenguaje C

Indice.

  1. Notas del autor
  2. ¿Qué es un socket?
  3. Dominios de comunicación.
  4. Tipos de socket en AF_INET.
  5. Byte order.
  6. Creación de un socket.
  7. Función bind().
  8. Estructuras
  9. Otras funciones utilizadas.
  10. Asignación de valores a una variable tipo sockaddr_in.
  11. Pasos para establecer la conexión.
  12. Descripción de las funciones
  13. Ejempo cliente-servidor simple.
  14. Ejemplo cliente -servidor concurrente.
  15. Bloqueo.
  16. Función select()
  17. Ejemplos.
  18. Bibliografía.
  19. Copyright.

##


1 - Notas del autor.

Aún se están corrigiendo errores, incrementando el contenido
y la cantidad de ejemplos. Ultima modificación 20/4/2000.

Hice todos los esfuersos para que este tutorial no contenga errores, pero
legalmente no me responsabilizo por cualquier daño ocasionado por
este tutorial o por cualquier parte del mismo.

Este tutorial aún cotinúa corrigiéndose y aumentando
su contenido. Le aconsejo visitar su sitio web oficial para verificar si
fue...

Leer mas...

Como configurar el TCP-Wrapper

1-Introducción.

Linux, igual que cualquier sistema operativo,
debe ser configurado para que sea seguro antes de conectarlo a una red,
especialmente cuando nos conectamos a Internet.

Como un intruso puede atacarnos e ingresar
a nuestra computadora ?

Linux o cualquier otro Unix, ejecutan un conjunto
de programas denominados daemons, que proveen servicios de red, como por
ejemplo servidores: ftp, smtp, telnet, etc. Estos pueden tener problemas
de seguridad, que son utilizados por el intruso para ganar acceso a nuestra
computadora.

Normalmente, luego de finalizar la instalación
de Linux, existen varios servicios de red ejecutandose que no son necesarios,
debemos saber que servicios son, deshabilitar todos aquellos que no sean
necesarios y configurar de forma segura los servicios que utilizaremos.

2-El súper server o inetd.

Muchas veces necesitamos que...

Leer mas...