Livres en anglais
2 livres et 2 critiques, dernière mise à jour le 16 décembre 2022 , note moyenne : 4
Détails du livre
Sommaire
Critiques (1)
0 commentaire
Computer Architecture for Scientists
Principles and Performance
de Andrew A. Chien
Public visé :
Débutant
Résumé de l'éditeur
The dramatic increase in computer performance has been extraordinary, but not for all computations: it has key limits and structure. Software architects, developers, and even data scientists need to understand how exploit the fundamental structure of computer performance to harness it for future applications.
Using a principled approach, Computer Architecture for Scientists covers the four key pillars of computer performance and imparts a high-level basis for reasoning with and understanding these concepts. These principles and models provide approachable high-level insights and quantitative modeling without distracting low-level detail. The pillars include:
Small is fast: how size scaling drives performance (miniaturization)
Hidden parallelism: how a sequential program can be executed faster with parallelism (instruction-level parallelism)
Dynamic locality: skirting physical limits, by arranging data in a smaller space (caches and reuse/locality)
Parallelism: increasing performance with teams of workers (multicore and cloud)
Finally, the text covers the GPU and machine-learning accelerators that have become important for more and more mainstream applications. The course provides a longer-term understanding of computer capabilities, performance, and limits to the wealth of computer scientists practicing data science, software development, or machine learning.
Édition : Cambridge - 264 pages, 1re édition, 10 mars 2022
ISBN10 : 1316518531 - ISBN13 : 9781316518533
Computing and the Transformation of Society
Instructions Sets, Software, and Instruction Execution
Processors and Scaling: Small is Fast!
Sequential Abstraction, But Parallel Implementation
Memories: Exploiting Dynamic Locality
The General Purpose Computer
Beyond Sequential: Parallelism in Multicore and the Cloud
Accelerators: Customized Architectures for Performance
Computing Performance: Past, Present, and Future
Appendix - RISC-V Instruction Set Reference Card
Instructions Sets, Software, and Instruction Execution
Processors and Scaling: Small is Fast!
Sequential Abstraction, But Parallel Implementation
Memories: Exploiting Dynamic Locality
The General Purpose Computer
Beyond Sequential: Parallelism in Multicore and the Cloud
Accelerators: Customized Architectures for Performance
Computing Performance: Past, Present, and Future
Appendix - RISC-V Instruction Set Reference Card
La majorité des livres sur l'architecture des ordinateurs porte uniquement sur la conception de processeurs. Pendant ce temps, le public cible a proportionnellement tendance à se réduire, vu le nombre d'utilisateurs à la recherche de performance lors de l'écriture de programmes (qu'ils aient pour objectif de faire avancer la science ou d'analyser des données). L'auteur ne rentre donc pas dans les détails d'implémentation des processeurs, en présentant les principes de conception plutôt que les mécanismes précis.
Au contraire, il reste à un niveau d'abstraction plus haut, ce qui ne facilite pas la compréhension fine du fonctionnement des bases d'un processeur, mais donne rapidement les idées principales derrière les attaques Spectre et Meltdown. Ceux qui souhaitent toutefois approfondir les sujets pourront profiter des sections de fin de chapitre, présentant les références académiques principales et des sources d'information pour les détails.
L'ouvrage vise un public qui n'a pas forcément une formation approfondie en informatique et introduit notamment les bases des compilateurs, surtout pour montrer comment les instructions de base (conditions, tableaux, structures, etc.) sont transformées en assembleur. L'auteur pose le choix de RISC-V comme exemple d'assembleur, surtout pour la simplicité de l'architecture ; il n'empêche qu'il présente également les processeurs x86 et ARM actuels. Le livre se termine sur des sujets plus avancés, comme les accélérateurs de plus en plus disponibles (processeurs graphiques ou spécifiques aux réseaux neuronaux) et les architectures infonuagiques (avec une brève introduction à la conception de systèmes).
Commenter Signaler un problème
Computer Architecture for Scientists
Principles and Performance
Principles and Performance
The dramatic increase in computer performance has been extraordinary, but not for all computations: it has key limits and structure. Software architects, developers, and even data scientists need to understand how exploit the fundamental structure of computer performance to harness it for future applications.
Using a principled approach, Computer Architecture for Scientists covers the four key pillars of computer performance and imparts a high-level basis for reasoning with and understanding these concepts. These principles and models provide approachable high-level insights and quantitative modeling without distracting low-level detail. The pillars include:
Small is fast: how size scaling drives performance (miniaturization)
Hidden parallelism: how a sequential program can be executed faster with parallelism (instruction-level parallelism)
Dynamic locality: skirting physical limits, by arranging data in a smaller space (caches and reuse/locality)
Parallelism: increasing performance with teams of workers (multicore and cloud)
Finally, the text covers the GPU and machine-learning accelerators that have become important for more and more mainstream applications. The course provides a longer-term understanding of computer capabilities, performance, and limits to the wealth of computer scientists practicing data science, software development, or machine learning.
[Lire la suite]
- Avez-vous lu ce livre ou pensez-vous le lire ?
- Souhaitez-vous ajouter une critique de ce livre sur la page de la rubrique ?
- Avez-vous un commentaire à faire ?
Détails du livre
Sommaire
Critiques (1)
0 commentaire
Programming Interactivity
A Designer's Guide to Processing, Arduino, and openFrameworks
de Joshua Noble
Public visé :
Débutant
Résumé de l'éditeur
Ready to create rich interactive experiences with your artwork, designs, or prototypes? This is the ideal place to start. With this hands-on guide, you'll explore several themes in interactive art and design—including 3D graphics, sound, physical interaction, computer vision, and geolocation—and learn the basic programming and electronics concepts you need to implement them. No previous experience is necessary.
You'll get a complete introduction to three free tools created specifically for artists and designers: the Processing programming language, the Arduino microcontroller, and the openFrameworks toolkit. You'll also find working code samples you can use right away, along with the background and technical information you need to design, program, and build your own projects.
You'll get a complete introduction to three free tools created specifically for artists and designers: the Processing programming language, the Arduino microcontroller, and the openFrameworks toolkit. You'll also find working code samples you can use right away, along with the background and technical information you need to design, program, and build your own projects.
- Learn cutting-edge techniques for interaction design from leading artists and designers
- Let users provide input through buttons, dials, and other physical controls
- Produce graphics and animation, including 3D images with OpenGL
- Use sounds to interact with users by providing feedback, input, or an element they can control
- Work with motors, servos, and appliances to provide physical feedback
- Turn a user's gestures and movements into meaningful input, using Open CV
Édition : O'Reilly Media - 736 pages, 2e édition, 1er janvier 2012
ISBN10 : 144931144X - ISBN13 : 9781449311445
- Chapter 1 Introducing Interaction Design
- Chapter 2 Programming Basics
- Chapter 3 Processing
- Chapter 4 Arduino
- Chapter 5 Programming Revisited
- Chapter 6 openFrameworks
- Chapter 7 Physical Input
- Chapter 8 Programming Graphics
- Chapter 9 Bitmaps and Pixels
- Chapter 10 Sound and Audio
- Chapter 11 Arduino and Feedback
- Chapter 12 Protocols and Communication
- Chapter 13 Graphics and OpenGL
- Chapter 14 Motion and Gestures
- Chapter 15 Movement and Location
- Chapter 16 Spaces and Environments
- Chapter 17 Further Resources
Au travers de son livre Programming Interactivity, Joshua Noble propose un guide pour comprendre et développer différentes interactions avec une machine, que ce soit visuel ou physique. Le public visé est tous niveaux. Pour cela, le guide se repose sur trois frameworks :
Processing et OpenFramework permettent de développer des applications PC et Arduino la carte physique. Un chapitre sur la communication processing<->Arduino et OpenFramework <-> Arduino est bien sûr présent.
Les points forts de ce livre sont :
Les points négatifs sont :
J'ai trouvé ce livre intéressant, mais je trouve que le public est mal visée.
J'aurais préféré un livre qui présente seulement Processing ou OpenFramework et plus d'explication sur la carte arduino et ses possibilités. Il peut toutefois être une bonne référence pour ceux qui aimerait se lancer dans l'aventure.
- Processing : basé sur java, ce framework est orienté non-développeur et permet de créer simplement une application affichant du contenu 2D avec des interactions clavier/souris ;
- Arduino : carte physique servant d'interface avec des entrées/sorties physiques. Arduino propose un langage de programmation basé sur le C et le C++ ;
- OpenFramework : framework C++ très complet proposant de la 2D, 3D, réseau, base de données...
Processing et OpenFramework permettent de développer des applications PC et Arduino la carte physique. Un chapitre sur la communication processing<->Arduino et OpenFramework <-> Arduino est bien sûr présent.
Les points forts de ce livre sont :
- des cours de C et C++ pour aider les débutants ;
- l'exposition de deux frameworks. Processing pour les non-développeurs et OpenFramework pour les confirmés ;
- explication de différentes entrées/sorties physiques et leurs câblages avec une carte Arduino.
Les points négatifs sont :
- les débutants risquent d'être vite perdus. Les cours de C et C++ sont minimes. Avoir des bases plus poussées est conseillé ;
- on sent qu'il faut être bidouilleur pour bien exploiter le livre ;
- le câble des entrées/sorties physiques avec une carte Arduino risque d'en perdre plus d'un. Il est préférable d'avoir des bases d'électronique.
J'ai trouvé ce livre intéressant, mais je trouve que le public est mal visée.
J'aurais préféré un livre qui présente seulement Processing ou OpenFramework et plus d'explication sur la carte arduino et ses possibilités. Il peut toutefois être une bonne référence pour ceux qui aimerait se lancer dans l'aventure.
Commenter Signaler un problème
Programming Interactivity
A Designer's Guide to Processing, Arduino, and openFrameworks
A Designer's Guide to Processing, Arduino, and openFrameworks
Ready to create rich interactive experiences with your artwork, designs, or prototypes? This is the ideal place to start. With this hands-on guide, you'll explore several themes in interactive art and design—including 3D graphics, sound, physical interaction, computer vision, and geolocation—and learn the basic programming and electronics concepts you need to implement them. No previous experience is necessary.
You'll get a complete introduction to three free tools created specifically for artists and designers: the Processing programming language, the Arduino microcontroller, and the openFrameworks toolkit. You'll also find working code samples you can use right away, along with the background and technical information you need to design, program, and build your own projects.
[Lire la suite]
You'll get a complete introduction to three free tools created specifically for artists and designers: the Processing programming language, the Arduino microcontroller, and the openFrameworks toolkit. You'll also find working code samples you can use right away, along with the background and technical information you need to design, program, and build your own projects.
- Learn cutting-edge techniques for interaction design from leading artists and designers
- Let users provide input through buttons, dials, and other physical controls
- Produce graphics and animation, including 3D images with OpenGL
- Use sounds to interact with users by providing feedback, input, or an element they can control
- Work with motors, servos, and appliances to provide physical feedback
- Turn a user's gestures and movements into meaningful input, using Open CV
[Lire la suite]
- Avez-vous lu ce livre ou pensez-vous le lire ?
- Souhaitez-vous ajouter une critique de ce livre sur la page de la rubrique ?
- Avez-vous un commentaire à faire ?