On Twitter, conservatives celebrate, and progressives cringe, about Musk’s ownership of Twitter. by BY STUART A. THOMPSON AND DAVID MCCABE


By BY STUART A. THOMPSON AND DAVID MCCABE

Members of the far right started testing the limits, tweeting misleading information about masks or pushing false claims about the 2020 election results.

Published: April 26, 2022 at 02:05PM

from NYT Technology https://ift.tt/0feMUIh
via IFTTT

Wolfire libero el código fuente de Overgrowth

Wolfire Games dio a conocer hace poco mediante una publicación de blog, que ha tomado la decisión de liberar el código fuente de uno de sus proyectos más exitosos, «Overgrowth». Después de 14 años de desarrollo como producto propietario, se decidió abrir el juego para brindar a los entusiastas la oportunidad de continuar mejorándolo a su gusto.

El código está escrito en C++ y está abierto bajo la licencia Apache 2.0, lo que permite, entre otras cosas, incluir el código en proyectos propietarios y vender el trabajo resultante. El código abierto cubre el motor del juego, los archivos del proyecto, los scripts, los sombreadores y las bibliotecas de soporte, mientras que ños recursos del juego siguen siendo propiedad y su distribución en proyectos de terceros requiere un permiso por separado de Wolfire Games (se permite la modificación).

En su publicación de blog, Wolfire Games compartió lo siguiente:

Hemos trabajado en Overgrowth durante 14 años. Es nuestro proyecto en curso de más larga duración, y una de las principales razones por las que hemos seguido trabajando en el juego es la fantástica respuesta de los fans y su seguimiento. No solo la gente de todo el mundo siguió jugando y disfrutando de Overgrowth durante años, sino que la comunidad también tuvo un enorme impacto en el proyecto. Desde los comentarios útiles que llevaron a mejores actualizaciones, hasta los asombrosos modders que expanden lo que puedes hacer en el juego, hasta los talentosos artistas y creadores que expanden el estilo y la tradición de Overgrowth. Este juego ha sido moldeado y elaborado en gran parte por las personas que lo juegan.

Entonces, ¿cuál es el siguiente paso? ¿Cómo honramos a la comunidad que ayudó a construir este juego? ¡Nos complace anunciar que el código de Overgrowth ahora es de código abierto! No solo eso, sino que también estamos reduciendo permanentemente el precio del juego en un tercio en todo el mundo, de $29,99 a $19,99 en EE. UU.

Solo el código se está volviendo abierto, no los activos artísticos o los niveles, la razón es que no queremos que alguien construya y venda Overgrowth como propio. Estamos usando la licencia Apache 2.0 , que te permite hacer lo que quieras con el código, con muy pocas obligaciones. Es fácil compilar y ejecutar el juego Overgrowth oficial utilizando el código fuente abierto, por lo que no necesita muchos conocimientos técnicos para comenzar.

Se supone que el código publicado se puede usar tanto para crear productos fundamentalmente nuevos que vienen con sus propios recursos de juego, como para ejecutarse con el conjunto original de recursos patentados al realizar experimentos o con fines educativos.

La inclusión de componentes y bibliotecas de juegos se puede transferir por separado a otros proyectos de juegos. También se menciona la voluntad de aceptar expansiones y cambios preparados por la comunidad para su inclusión en el juego comercial Overgrowth. Si no es posible integrar cambios en el proyecto principal, puede crear sus propias ediciones no oficiales del juego.

La esencia del juego Overgrowth está en las aventuras de un conejo ninja, que se involucra en un combate cuerpo a cuerpo con otros animales antropomórficos (conejos, lobos, ratas, gatos, perros) mientras completa las tareas asignadas al jugador.

El juego se desarrolla en un entorno tridimensional con una vista en tercera persona, y para lograr los objetivos, el jugador tiene total libertad de movimiento y organización de sus acciones. Además de las misiones para un jugador, también se admite el modo multijugador.

El juego está equipado con un motor de física avanzado que está estrechamente integrado con el motor 3D e implementa el concepto de «animación procesal basada en la física», que permite un movimiento realista de los personajes y un comportamiento de animación adaptable según el entorno.

El juego también destaca por el uso de controles sensibles al contexto originales que te permiten aplicar varias tácticas de combate, y un motor de IA que coordina las acciones conjuntas de los personajes y permite retirarse en caso de una alta probabilidad de derrota. Se proporciona una interfaz para editar mapas y escenarios.

El motor del juego admite física de cuerpo rígido, animación esquelética, iluminación píxel por píxel con refracción de reflejos, sonido 3D, modelado de objetos dinámicos como el cielo, el agua y la hierba, detalles adaptables, representación realista de lana y plantas, profundidad y desenfoque de  efectos durante el movimiento rápido, varios tipos de mapeo de texturas (incluido el mapeo dinámico de cubos y el mapeo de paralaje).

Finalmente si estás interesado en conocer más al respecto, puedes consultar los detalles en el siguiente enlace.

from Linux Adictos https://ift.tt/egqKu1l
via IFTTT

HPVM, un compilador de la mano de LLVM para CPU, GPU, FPGA y aceleradores de hardware

Hace poco el proyecto LLVM dio a conocer el lanzamiento de la nueva versión del compilador HPVM 2.0 (Heterogeneous Parallel Virtual Machine), cuyo objetivo es simplificar la programación para sistemas y proporcionar herramientas para generar código para CPU, GPU, FPGA y aceleradores de hardware específicos de dominio.

La programación de sistemas paralelos heterogéneos es complicada debido a la presencia en un sistema de componentes que usan diferentes modelos para lograr el paralelismo (núcleos de CPU, instrucciones vectoriales, GPU, etc.), diferentes conjuntos de instrucciones y diferentes jerarquías de memoria. Cada sistema utiliza su propia combinación de estos componentes.

La idea principal del proyecto HPVM es usar una representación unificada de programas ejecutables paralelos al compilar, que se puede usar para varios tipos de hardware que admiten computación paralela, incluidas GPU, instrucciones vectoriales, procesadores multinúcleo, FPGA y varios chips aceleradores especializados.

A diferencia de otros sistemas, HPVM intentó combinar tres posibilidades para organizar la computación heterogénea: una representación intermedia (IR), una arquitectura de conjunto de instrucciones virtuales (V-ISA) y programación de tiempo de ejecución, independientemente del lenguaje de programación y el hardware.

La representación intermedia HPVM amplía la representación intermedia de las instrucciones LLVM mediante el uso de un gráfico de flujo de datos jerárquico para capturar el paralelismo a nivel de tareas, datos y canalizaciones computacionales. La representación intermedia de HPVM también incluye instrucciones vectoriales y memoria compartida. El objetivo principal de usar una representación intermedia es la generación y optimización de código eficiente para sistemas heterogéneos.

La arquitectura de conjunto de instrucciones virtuales (V-ISA) abstrae el hardware de bajo nivel y unifica varias formas de paralelismo y arquitecturas de memoria utilizando solo el modelo de concurrencia subyacente, el gráfico de flujo de datos.

V-ISA permite lograr portabilidad entre diferentes tipos de hardware para computación paralela y posibilita no perder rendimiento al utilizar diferentes elementos de sistemas heterogéneos. Virtual ISA también se puede usar para entregar un código ejecutable de programa genérico que se puede ejecutar en CPU, GPU, FPGA y varios aceleradores.

Las políticas de programación de procesos informáticos flexibles se aplican en tiempo de ejecución y se implementan sobre la base de información sobre el programa (estructura gráfica) y mediante la compilación de nodos de programas individuales para su ejecución en cualquiera de los dispositivos informáticos de destino disponibles en el sistema.

Los generadores de código desarrollados por el proyecto son capaces de traducir los nodos de aplicación definidos mediante ISA virtual para ejecutarse en GPU NVIDIA (cuDNN y OpenCL), instrucciones vectoriales Intel AVX, FPGA y CPU x86 multinúcleo. Se observa que el rendimiento de los resultados de los traductores HPVM es comparable al código OpenCL escrito manualmente para GPU y dispositivos informáticos vectoriales.

Principales novedades de HPVM 2.0

Por la parte de las novedades que se presentan en esta nueva versión, se destacan las siguientes:

  • Se propone el frontend del lenguaje Hetero-C++, que simplifica la paralelización del código de la aplicación en lenguajes C/C++ para su compilación en HPVM. Hetero-C++ define extensiones para el paralelismo de nivel de datos y tareas jerárquicas que se asignan a gráficos de subprocesos de HPVM.
  • Se ha agregado un backend de FPGA para admitir la ejecución de código en un FPGA de Intel. Para organizar la ejecución se utiliza Intel FPGA SDK for OpenCL.
  • Se ha agregado el marco DSE (Design Space Exploration), que incluye optimizaciones del compilador y mecanismos de detección de cuellos de botella para ajustar automáticamente las aplicaciones para una plataforma de hardware determinada.
  • El marco contiene un modelo de rendimiento listo para usar para FPGA de Intel y le permite conectar sus propios procesadores para optimizar cualquier dispositivo compatible con HPVM.
  • Las optimizaciones se pueden aplicar tanto a nivel de gráfico de flujo de datos de HPVM como a nivel de LLVM.
  • Componentes de LLVM actualizados a la versión 13.0 .
  • El código se ha reorganizado para facilitar la navegación a través de la base de código, las bibliotecas y las utilidades.
  • Se mejoró la infraestructura para las pruebas, se agregaron nuevas pruebas para varios componentes de HPVM.

Finalmente, si estás interesado en poder conocer más al respecto de HPVM, puedes consultar los detalles en el siguiente enlace.

from Linux Adictos https://ift.tt/hA06vYE
via IFTTT