Puntuación:
Actualmente no hay opiniones de lectores. La calificación se basa en 75 votos.
The Art of Writing Efficient Programs: An advanced programmer's guide to efficient hardware utilization and compiler optimizations using C++ examples
Conozca diversas técnicas de mejora del rendimiento, como la concurrencia, la programación sin bloqueos, las operaciones atómicas, el paralelismo y la gestión de la memoria.
Características principales:
⬤ Entender las limitaciones de las CPUs modernas y su impacto en el rendimiento.
⬤ Descubra cómo puede evitar escribir código ineficiente y obtener las mejores optimizaciones del compilador.
⬤ Aprenda las compensaciones y los costes de escribir programas de alto rendimiento.
Descripción del libro
El gran almuerzo gratis del "rendimiento que se cuida solo" se ha acabado. Hasta hace poco, los programas se hacían más rápidos por sí solos a medida que se actualizaban las CPU, pero eso ya no ocurre. La frecuencia de reloj de los nuevos procesadores casi ha tocado techo. Las nuevas arquitecturas aportan pequeñas mejoras a los programas existentes, pero esto sólo ayuda ligeramente. Los procesadores son cada vez más grandes y potentes, pero la mayor parte de esta nueva potencia la consume el mayor número de núcleos de procesamiento y otras unidades de cálculo "extra". Para escribir software eficiente, ahora hay que saber programar haciendo un buen uso de los recursos informáticos disponibles, y este libro le enseñará cómo hacerlo.
El libro cubre todos los aspectos principales de la escritura de programas eficientes, tales como el uso eficiente de los recursos de la CPU y la memoria, evitando cálculos innecesarios, midiendo el rendimiento, y cómo poner la concurrencia y multithreading a buen uso. También conocerá las optimizaciones del compilador y cómo utilizar el lenguaje de programación (C)+) de forma más eficiente. Por último, comprenderá cómo influyen las decisiones de diseño en el rendimiento.
Al final de este libro, no sólo tendrá conocimientos suficientes sobre procesadores y compiladores para escribir programas eficientes, sino que también será capaz de entender qué técnicas utilizar y qué medir para mejorar el rendimiento. En esencia, este libro trata sobre cómo aprender a aprender.
Lo que aprenderá:
⬤ Descubrir cómo utilizar eficazmente los recursos informáticos de hardware en sus programas.
⬤ Comprender la relación entre el orden de memoria y las barreras de memoria.
⬤ Familiarizarse con las implicaciones en el rendimiento de diferentes estructuras y organizaciones de datos.
⬤ Evaluar el impacto en el rendimiento del acceso concurrente a la memoria y cómo minimizarlo.
⬤ Descubrir cuándo usar y cuándo no usar técnicas de programación sin bloqueos.
⬤ Explorar diferentes formas de mejorar la eficacia de las optimizaciones del compilador.
⬤ Diseñar APIs para estructuras de datos concurrentes y estructuras de datos de alto rendimiento para evitar ineficiencias.
A quién va dirigido este libro:
Este libro está dirigido a desarrolladores y programadores experimentados que trabajan en proyectos de rendimiento crítico y desean aprender diferentes técnicas para mejorar el rendimiento de su código. Los programadores que pertenecen a las comunidades de comercio algorítmico, juegos, bioinformática, genómica computacional o dinámica de fluidos computacional pueden aprender diversas técnicas de este libro y aplicarlas en su ámbito de trabajo.
Aunque este libro utiliza el lenguaje C++, los conceptos demostrados en el libro pueden transferirse o aplicarse fácilmente a otros lenguajes compilados como C, Java, Rust, Go, etc.
© Book1 Group - todos los derechos reservados.
El contenido de este sitio no se puede copiar o usar, ni en parte ni en su totalidad, sin el permiso escrito del propietario.
Última modificación: 2024.11.14 07:32 (GMT)