FreeComputerBooks.com
Links to Free Computer, Mathematics, Technical Books all over the World
|
|
-
Data Parallel C++, 2nd Edition: Programming C++ and SYCL
Learn how to accelerate C++ programs using Data Parallelism and SYCL. Enables C++ programmers to be at the forefront of this exciting and important development that is helping to push computing to new levels.
-
Is Parallel Programming Hard? If So, What Can You Do About It?
It examines what makes parallel programming hard, and describes design techniques that can help you avoid many parallel-programming pitfalls. It is primarily intended for low-level C/C++ code, but offers valuable lessons for other environments as well.
-
Parallel Programming for FPGAs (Ryan Kastner, et al.)
Aimed at teaching hardware and software developers how to efficiently program FPGAs using high-level synthesis (HLS). Focuses on the use of algorithmic high-level synthesis (HLS) to build application-specific FPGA systems.
-
The Little Book of Semaphores: Concurrency Control
This book introduces the principles of synchronization for concurrent programming. The approach of this book is to identify patterns that are useful for a variety of synchronization problems and then show how they can be assembled into solutions.
-
XcalableMP PGAS Programming Language (Mitsuhisa Sato)
XcalableMP is a directive-based parallel programming language based on Fortran and C, supporting a Partitioned Global Address Space (PGAS) model for distributed memory parallel systems.
-
Parallel Programming with CUDA: Architecture, Analysis, Application
This book offers a detailed guide to CUDA with a grounding in parallel fundamentals. With CUDA, you can use a desktop PC for work that would have previously required a large cluster of PCs or access to a High-Performance Computing (HPC) facility.
-
Pro TBB: C++ Parallel Programming with Threading Building Blocks
This book is a modern guide for all C++ programmers to learn Threading Building Blocks (TBB). It presents numerous examples and best practices to help you become an effective TBB programmer and leverage the power of parallel systems.
-
Introduction to Parallel Computing (Blaise Barney)
This book explains how to design, debug, and evaluate the performance of distributed and shared-memory programs. It teaches students how to compile, run and modify example programs. It is a complete end-to-end source of information on almost all aspects.
-
Parallel Programming in MPI and OpenMP (Victor Eijkhout)
This is a textbook about parallel programming of scientific application on large computers, learn how to design, analyze, implement, and benchmark parallel programs in C/C++ and Fortran using Message Passing Interface (MPI) and/or OpenMP.
-
Parallel Scientific Computing in C++ and MPI: Algorithms
This book provides a seamless approach to numerical algorithms, modern programming techniques and parallel computing, includes both basic and advanced topics and places equal emphasis on the discretization of partial differential equations and on solvers.
-
The Practice of Parallel Programming (Sergey A. Babkin)
This book provides an advanced guide to the issues of the parallel and multithreaded programming. It goes beyond the high-level design of the applications, into the details that are often overlooked but vital to make the programs work.
-
Notes on Theory of Distributed Systems (James Aspnes)
This book rovides a comprehensive source of material on the principles and practice of distributed computer systems and the exciting new developments based on them, using a wealth of modern case studies to illustrate their design and development.
-
Distributed Systems, 3rd Edition (Maarten van Steen, et al)
This book covers the principles, advanced concepts, and technologies of distributed systems in detail, including: communication, replication, fault tolerance, and security. It shows how distributed systems are designed and implemented in real systems.
-
Distributed Systems For Fun and Profit (Mikito Takada)
This little book manages to pack an enormous amount of information about core distributed system concepts. It offers concise and clear explanations and links and references to many important works and papers on distributed systems.
-
Introduction to High-Performance Scientific Computing (Eijkhout)
This is a textbook that teaches the bridging topics between numerical analysis, parallel computing, code performance, large scale applications. it assumes a basic knowledge of numerical computation and proficiency in Fortran or C programming.
-
Data Parallel C++: Mastering DPC++ Programming
Learn how to accelerate C++ programs using Data Parallelism. This book enables C++ programmers to be at the forefront of this exciting and important new development that is helping to push computing to new levels.
-
O'Reilly® Parallel and Concurrent Programming in Haskell
This hands-on book shows you how to use the languageās many APIs and frameworks for writing both parallel and concurrent programs. You'll learn how parallelism exploits multicore processors to speed up computation-heavy programs.
-
Parallel Programming in Fortran 95 using OpenMP
Nowadays parallel computers are very common in research facilities as well as companies all over the world and are extensively used for complex computations, like simulations of atomic explosions, folding of proteins or turbulent flows.
-
BIG CPU, BIG DATA: Solving the World's Toughest Problems
This book teaches you how to write parallel programs for multicore machines, compute clusters, GPU accelerators, and big data map-reduce jobs, in the Java language, with the free, easy-to-use, object-oriented Parallel Java 2 Library.
-
Programming on Parallel Machines: GPU, Multicore, Clusters, etc.
The main goal of the book is to present parallel programming techniques that can be used in many situations for many application areas and which enable the reader to develop correct and efficient parallel programs.
-
Parallel Computing Works! (Geoffrey C. Fox, et al.)
A clear illustration of how parallel computers can be successfully applied to large-scale scientific computations. This book demonstrates how a variety of applications were implemented on real parallel computers to produce new scientific results.
-
Recent Progress in Parallel and Distributed Computing
This book reports state-of-the-art topics and advances in this emerging field, including the following: 1) Social networks; 2) Smart grids; 3) GPU computation; 4) Distributed software development tools; 5) Analytic hierarchy and network process.
-
Designing and Building Parallel Programs (Ian Foster)
This book introduces the parallel paradigm, and shows how parallel programming is carried out using a variety of programming languages, focus throughout on parallel programming as opposed to algorithm development.
-
Parallel Spectral Numerical Methods (Gong Chen, et al)
This book teaches the principals of Fourier spectral methods, their utility in solving partial differential equation and how to implement them in code. The programs will use Matlab and Fortran. A Python implementation of some of the Matlab programs is also provided.
-
Why Rust? Trustworthy, Concurrent Systems Programming
This book explains how Rust achieves the combination of safety and security with performance via a sophisticated and flexible type system. You'll learn how to put Rust's safety, performance, and trustworthy concurrency to use.
-
Rust Atomics and Locks: Low-Level Concurrency in Practice
Helps Rust programmers gain a clear understanding of low-level concurrency. Learn everything about atomics and memory ordering and how to combine with basic operating system APIs to build common primitives like mutexes and condition variables.
-
Mobile Edge Computing (Yan Zhang)
This open access book offers comprehensive, self-contained knowledge on Mobile Edge Computing (MEC), which is a very promising technology for achieving intelligence in the next-generation wireless communications and computing networks.
-
Distributed Control of Robotic Networks (Francesco Bullo, et al)
This self-contained introduction to the distributed control of robotic networks offers a distinctive blend of computer science and control theory. It provides explanations of the basic concepts and main results, as well as numerous examples and exercises.
-
High Performance Computing and Numerical Modelling
This textbook provides a step-by-step approach to numerical methods in engineering modelling. It provides a consistent treatment of the topic, from the ground up, to reinforce for students that numerical methods are a set of mathematical modelling tools.
-
High Performance Computing (Charles Severance)
The purpose of this book is to teach new programmers and scientists about the basics of High Performance Computing. It presents techniques that address new performance issues in the programming of High-Performance Computing (HPC) applications.
-
HPC, Big Data, and AI Convergence Towards Exascale
Provides an updated vision on the most advanced computing, storage, and interconnection technologies, that are at basis of convergence among the High-Performance Computing (HPC), Cloud, Big Data, and artificial intelligence (AI) domains.
-
Designing Distributed Systems: Patterns and Paradigms
It presents a collection of repeatable, generic patterns to help make the development of reliable distributed systems far more approachable and efficient, demonstrates how you can adapt existing software design patterns for designing and building reliable apps.
-
Parallel Algorithms (Henri Casanova, et al)
Focusing on algorithms for distributed-memory parallel architectures, the book extracts fundamental ideas and algorithmic principles from the mass of parallel algorithm expertise and practical implementations developed over the last few decades.
-
Mastering Ethereum: Building Smart Contracts and DApps
The book is intended to serve both as a reference manual and as a cover-to-cover exploration of Ethereum. If you're looking to get started with the Ethereum protocol (open source developers, integrators, etc.), this is the definitive book on the topic.
-
Blockchain By Example (Bellaj Badr, et al)
This book will walk you through the process of building multiple Blockchain. projects with different complexity levels and hurdles. Each project will teach you just enough about the field's leading technologies, Bitcoin, Ethereum, Quorum, and Hyperledger, etc.
-
The World of Peer-to-Peer (P2P)
It explains the overall utilization that P2P (Peer-to-Peer) technologies have in today's world, it goes deeper into as many implementations as it can and compares the benefits, problems even legal implications and changes to social and economic infrastructures.
-
Evolution of Parallel Cellular Machines: Cellular Programming
This self-contained volume examines the behavior of Parallel Cellular Machines, the complex computation they exhibit, and the application of artificial evolution to attain such systems. It explores the issue of constructing man-made systems.
-
Grid Computing - Technology, Applications, and New Horizons
This book tells the story of great potential, continued strength, and widespread international penetration of Grid computing. It highlights the international widespread coverage and unveils the future potential of the Grid.
-
Advances in Grid Computing (Zoran Constantinescu)
This book approaches the grid computing with a perspective on the latest achievements in the field, providing an insight into the current research trends and advances, etc.
-
Code Connected Volume 1: Learning ZeroMQ (Pieter Hintjens)
This book takes you through learning ZeroMQ, step-by-step, with over 80 examples. You will learn the basics, the API, the different socket types and how they work, reliability, and a host of patterns you can use in your applications.
-
Concurrency Control and Recovery in Database Systems
This book is about techniques for concurrency control and recovery. It covers techniques for centralized and distributed computer systems, and for single copy, multiversion, and replicated databases.
-
Concurrent Programming: The Java Programming Language
A practical introduction to the issues and concepts in concurrent programming, operating systems, the client-server model, and multiple threads, showing how to utilize Java to write programs that use semaphores, monitors, message passing, etc.
-
Java Based Real Time Programming (Klas Nilsson)
This book approaches the real-time issues via established web-programming and concurrency techniques, which will reveal a few deficiencies of the standard Java platform. A real-time package and a few run-time extensions will be presented.
-
Parallel and Distributed Computing (Alberto Ros)
This book is the comprehensive, authoritative reference on parallel and distributed systems that everyone who works with or follows this rapidly advancing technology has long needed.
-
PVM: Parallel Virtual Machine - Network Parallel Computing
Written by the team that developed the software, this tutorial is the definitive resource for scientists, engineers, and other computer users who want to use PVM to increase the flexibility and power of their high-performance computing resources.
-
Security Engineering: Building Dependable Distributed Systems
This book makes it clear just how difficult it is to protect information systems from corruption, eavesdropping, unauthorized use, and general malice.
-
Parallel and Distributed Programming Using C++ (Cameron Hughes)
This book provides an up-close look at how to build software that can take advantage of multiprocessor computers. Simple approaches for programming parallel virtual machines are presented, and the basics of cluster application development are explained.
-
Parallel Programming with Microsoft .NET (Colin Campbell)
This book shows C# and VB.NET programmers how to effectively take advantage of the multicore capabilities of modern PCs using the Microsoft platform.
-
Concurrent Programming in Erlang, 2nd Edition (J. Armstrong, et al)
This book employs a tutorial approach to guide the reader through the programming of real-time and distributed fault-tolerant systems.
-
MPI: The Complete Reference (Marc Snir, et al)
The Message Passing Interface (MPI) specification has become a standard for message-passing libraries for parallel computations. This book contains greater discussion of datatype extents, the most frequently misunderstood feature of MPI.
-
Parallel Complexity Theory (Ian Parberry)
This book's aim is to show how the theoretical study of parallel computing complexity can be useful in the process of designing effective parallel algorithms - an abstract measure of the complexity of parallel computing problems.
-
Functional Programming and Parallel Graph Rewriting
This is an introduction to the techniques of functional programming, focusing on an alternative computational model - Graph Rewriting Systems.
-
Data-Intensive Text Processing with MapReduce (Jimmy Lin)
This free book focuses on MapReduce algorithm design, with an emphasis on text processing algorithms common in natural language processing, information retrieval, and machine learning.
-
Modern Multithreading using Java, C++, and Win32 Programs
This textbook examines languages and libraries for multithreaded programming. Readers learn how to create threads in Java and C++, and develop essential concurrent programming and problem-solving skills.
-
Multiagent Systems: Algorithmic, Game-Theoretic, and Logic, etc.
This comprehensive introduction to a burgeoning field is written from a computer science perspective, while bringing together ideas from operations research, game theory, economics, logic, and even philosophy and linguistics.
-
Computer and Network Organization (Maarten van Steen, et al)
Introduces the technical principles of computer architecture, operating systems and computer networks and provides a practical overview. It explains how the interaction between hardware and software takes place in relation to network operating systems.
-
High Performance Computing For Dummies, Sun & AMD Edition
This book explains what High-Performance Computing (HPC) is and shows how it can help you or others within your company. It is intended for anyone who has heard about the many benefits of using HPC (such as streamlining processes or saving money).
-
A Guide to Distributed Digital Preservation (Katherine Skinner)
Readers may use this guide to gain both a philosophical and practical understanding of the emerging field of distributed digital preservation, including how to establish or join a network.
:
|
|