Skip to main content

Morgan Kaufmann

  • Multicore and GPU Programming

    An Integrated Approach
    • 2nd Edition
    • Gerassimos Barlas
    • English
    Multicore and GPU Programming: An Integrated Approach, Second Edition offers broad coverage of key parallel computing tools, essential for multi-core CPU programming and many-core "massively parallel" computing. Using threads, OpenMP, MPI, CUDA and other state-of-the-art tools, the book teaches the design and development of software capable of taking advantage of modern computing platforms that incorporate CPUs, GPUs and other accelerators. Presenting material refined over more than two decades of teaching parallel computing, author Gerassimos Barlas minimizes the challenge of transitioning from sequential programming to mastering parallel platforms with multiple examples, extensive case studies, and full source code. By using this book, readers will better understand how to develop programs that run over distributed memory machines using MPI, create multi-threaded applications with either libraries or directives, write optimized applications that balance the workload between available computing resources, and profile and debug programs targeting parallel machines.
  • Measuring the User Experience

    Collecting, Analyzing, and Presenting UX Metrics
    • 3rd Edition
    • Bill Albert + 1 more
    • English
    *Textbook and Academic Authors Association (TAA) Textbook Excellence Award Winner, 2024*Measuring the User Experience: Collecting, Analyzing, and Presenting UX Metrics, Third Edition provides the quantitative analysis training that students and professionals need. This book presents an update on the first resource that focused on how to quantify user experience. Now in its third edition, the authors have expanded on the area of behavioral and physiological metrics, splitting that chapter into sections that cover eye-tracking and measuring emotion. The book also contains new research and updated examples, several new case studies, and new examples using the most recent version of Excel.
  • Storage Systems

    Organization, Performance, Coding, Reliability, and Their Data Processing
    • 1st Edition
    • Alexander Thomasian
    • English
    Storage Systems: Organization, Performance, Coding, Reliability and Their Data Processing was motivated by the 1988 Redundant Array of Inexpensive/Independ... Disks proposal to replace large form factor mainframe disks with an array of commodity disks. Disk loads are balanced by striping data into strips—with one strip per disk— and storage reliability is enhanced via replication or erasure coding, which at best dedicates k strips per stripe to tolerate k disk failures. Flash memories have resulted in a paradigm shift with Solid State Drives (SSDs) replacing Hard Disk Drives (HDDs) for high performance applications. RAID and Flash have resulted in the emergence of new storage companies, namely EMC, NetApp, SanDisk, and Purestorage, and a multibillion-dollar storage market. Key new conferences and publications are reviewed in this book.The goal of the book is to expose students, researchers, and IT professionals to the more important developments in storage systems, while covering the evolution of storage technologies, traditional and novel databases, and novel sources of data. We describe several prototypes: FAWN at CMU, RAMCloud at Stanford, and Lightstore at MIT; Oracle's Exadata, AWS' Aurora, Alibaba's PolarDB, Fungible Data Center; and author's paper designs for cloud storage, namely heterogeneous disk arrays and hierarchical RAID.
  • An Introduction to Parallel Programming

    • 2nd Edition
    • Peter Pacheco + 1 more
    • English
    An Introduction to Parallel Programming, Second Edition presents a tried-and-true tutorial approach that shows students how to develop effective parallel programs with MPI, Pthreads and OpenMP.As the first undergraduate text to directly address compiling and running parallel programs on multi-core and cluster architecture, this second edition carries forward its clear explanations for designing, debugging and evaluating the performance of distributed and shared-memory programs while adding coverage of accelerators via new content on GPU programming and heterogeneous programming. New and improved user-friendly exercises teach students how to compile, run and modify example programs.
  • Digital Design and Computer Architecture, RISC-V Edition

    • 1st Edition
    • Sarah Harris + 1 more
    • English
    The newest addition to the Harris and Harris family of Digital Design and Computer Architecture books, this RISC-V Edition covers the fundamentals of digital logic design and reinforces logic concepts through the design of a RISC-V microprocessor. Combining an engaging and humorous writing style with an updated and hands-on approach to digital design, this book takes the reader from the fundamentals of digital logic to the actual design of a processor. By the end of this book, readers will be able to build their own RISC-V microprocessor and will have a top-to-bottom understanding of how it works. Beginning with digital logic gates and progressing to the design of combinational and sequential circuits, this book uses these fundamental building blocks as the basis for designing a RISC-V processor. SystemVerilog and VHDL are integrated throughout the text in examples illustrating the methods and techniques for CAD-based circuit design. The companion website includes a chapter on I/O systems with practical examples that show how to use SparkFun’s RED-V RedBoard to communicate with peripheral devices such as LCDs, Bluetooth radios, and motors. This book will be a valuable resource for students taking a course that combines digital logic and computer architecture or students taking a two-quarter sequence in digital logic and computer organization/archite...
  • Visual Thinking for Information Design

    • 2nd Edition
    • Colin Ware
    • English
    Visual Thinking for Information Design, Second Edition brings the science of perception to the art of design. The book takes what we now know about perception, cognition and attention and transforms it into concrete advice that students and designers can directly apply. It demonstrates how designs can be considered as tools for cognition and extensions of the viewer’s brain in much the same way that a hammer is an extension of the user’s hand. The book includes hundreds of examples, many in the form of integrated text and full-color diagrams. Renamed from the first edition, Visual Thinking for Design, to more accurately reflect its focus on infographics, this timely revision has been updated throughout and includes more content on pattern perception, the addition of new material illustrating color assimilation, and a new chapter devoted to communicating ideas through images.
  • Computer Networks

    A Systems Approach
    • 6th Edition
    • Larry L. Peterson + 1 more
    • English
    Computer Networks: A Systems Approach, Sixth Edition, explores the key principles of computer networking, using real world examples from network and protocol design. Using the Internet as the primary example, this best-selling classic textbook explains various protocols and networking technologies. The systems-oriented approach encourages students to think about how individual network components fit into a larger, complex system of interactions. This sixth edition contains completely updated content with expanded coverage of the topics of utmost importance to networking professionals and students, as provided by numerous contributors via a unique open source model developed jointly by the authors and publisher.Hallmark features of the book are retained, including chapter problem statements, which introduce issues to be examined; shaded sidebars that elaborate on a topic or introduce a related advanced topic; What’s Next? discussions that deal with emerging issues in research, the commercial world, or society; and exercises. This book is intended primarily for graduate or upper-division undergraduate classes in computer networking. It will also be useful for industry professionals retraining for network-related assignments, as well as for network practitioners seeking to understand the workings of network protocols and the big picture of networking.
  • Computer Organization and Design RISC-V Edition

    The Hardware Software Interface
    • 2nd Edition
    • David A. Patterson + 1 more
    • English
    Computer Organization and Design RISC-V Edition: The Hardware Software Interface, Second Edition, the award-winning textbook from Patterson and Hennessy that is used by more than 40,000 students per year, continues to present the most comprehensive and readable introduction to this core computer science topic. This version of the book features the RISC-V open source instruction set architecture, the first open source architecture designed for use in modern computing environments such as cloud computing, mobile devices, and other embedded systems. Readers will enjoy an online companion website that provides advanced content for further study, appendices, glossary, references, links to software tools, and more.
  • Computer Organization and Design MIPS Edition

    The Hardware/Software Interface
    • 6th Edition
    • David A. Patterson + 1 more
    • English
    Computer Organization and Design: The Hardware/Software Interface, Sixth Edition, the leading, award-winning textbook from Patterson and Hennessy used by more than 40,000 students per year, continues to present the most comprehensive and readable introduction to this core computer science topic. Improvements to this new release include new sections in each chapter on Domain Specific Architectures (DSA) and updates on all real-world examples that keep it fresh and relevant for a new generation of students.
  • The Art of Multiprocessor Programming

    • 2nd Edition
    • Maurice Herlihy + 3 more
    • English
    The Art of Multiprocessor Programming, Second Edition, provides users with an authoritative guide to multicore programming. This updated edition introduces higher level software development skills relative to those needed for efficient single-core programming, and includes comprehensive coverage of the new principles, algorithms, and tools necessary for effective multiprocessor programming. The book is an ideal resource for students and professionals alike who will benefit from its thorough coverage of key multiprocessor programming issues.