![]() |
Welcome to Loot.co.za!
Sign in / Register |Wishlists & Gift Vouchers |Help | Advanced search
|
Your cart is empty |
||
|
Books > Computing & IT > Computer hardware & operating systems > Computer architecture & logic design
This book presents task-scheduling techniques for emerging complex parallel architectures including heterogeneous multi-core architectures, warehouse-scale datacenters, and distributed big data processing systems. The demand for high computational capacity has led to the growing popularity of multicore processors, which have become the mainstream in both the research and real-world settings. Yet to date, there is no book exploring the current task-scheduling techniques for the emerging complex parallel architectures. Addressing this gap, the book discusses state-of-the-art task-scheduling techniques that are optimized for different architectures, and which can be directly applied in real parallel systems. Further, the book provides an overview of the latest advances in task-scheduling policies in parallel architectures, and will help readers understand and overcome current and emerging issues in this field.
This book discusses Change Management Impact Analysis and how this method is used to analysis the risks and benefits of a change management initiative when it pertains to obtaining critical insight into how the change management program budget should be allotted. The process also offers useful indicators for what areas within the system should be monitored during the change management process. This book presents theoretical analysis of practical implications and surveys, along with analysis. It covers the functions aimed at identifying various stakeholders associated with the software such as requirement component, design component, and class component. The book talks about the interrelationship between the change and the effects on the rest of the system and dives deeper to include the critical role that the analysis places on the existing multiple functions such as estimating the development costs, the project overhead costs, cost for the modification of the system, and system strength or detecting errors in the system during the process. Case studies are also included to help researchers and practitioners to absorb the material presented. This book is useful to graduate students, researchers, academicians, institutions, and professionals that interested in exploring the areas of Impact Analysis.
Melvin Greer and Kevin Jackson have assembled a comprehensive guide to industry-specific cybersecurity threats and provide a detailed risk management framework required to mitigate business risk associated with the adoption of cloud computing. This book can serve multiple purposes, not the least of which is documenting the breadth and severity of the challenges that today's enterprises face, and the breadth of programmatic elements required to address these challenges. This has become a boardroom issue: Executives must not only exploit the potential of information technologies, but manage their potential risks. Key Features * Provides a cross-industry view of contemporary cloud computing security challenges, solutions, and lessons learned * Offers clear guidance for the development and execution of industry-specific cloud computing business and cybersecurity strategies * Provides insight into the interaction and cross-dependencies between industry business models and industry-specific cloud computing security requirements
While aviation fatalities have thankfully fallen dramatically in recent years, the phenomena of complexity and cognitive bias have been shown to be factors in many accidents. An understanding of these phenomena promises to bring the fatality rate even lower, and a deeper understanding of commercial aircraft in the context of systems engineering will contribute to that trend. Systems Approach to the Design of Commercial Aircraft describes commercial aircraft from an advanced systems point of view, addressing complexity, cybersecurity, and systems architecting. In addition, it provides an explanation of systems engineering, describes how systems engineering forms a framework for commercial aircraft, covers how systems engineering and systems architecting relate to commercial aircraft, addresses complexity, and shows how humans fit into systems engineering and the importance for commercial aircraft. It goes onto present how cybersecurity plays an important role in the mix and how human interface fits in. The readership includes designers of aircraft, manufacturers, researchers, systems engineers, and students. Scott Jackson is a fellow of the International Council on Systems Engineering (INCOSE) and the author of Systems Engineering for Commercial Aircraft (1997 and 2015) in English and Chinese. Ricardo Moraes dos Santos is a senior systems engineer at EMBRAER S/A and an INCOSE Brazil chapter director. He works with Architecting process (Corporate) and is head of Cybersecurity and Safety (STPA Applications) at EMBRAER S/A.
Built specifically for statistical computing and graphics, the R language, along with its amazing collection of libraries and tools, is one of the most powerful tools you can use to tackle data analysis for business, research, and other data-intensive domains. This revised and expanded third edition of R in Action covers the new tidy verse approach to data analysis and R's state-of-the-art graphing capabilities with the ggplot2 package. R in Action, Third Edition teaches you to use the R language, including the popular tidy verse packages, through hands-on examples relevant to scientific, technical, and business developers. Focusing on practical solutions to real-world data challenges, R expert RobKabacoff takes you on a crash course in statistics, from dealing with messy and incomplete data to creating stunning visualisations. The R language is the most powerful platform you can choose for modern data analysis. Free and open source, R's community has created thousands of modules to tackle challenges from data-crunching to presentation. R's graphical capabilities are also state-of-the-art, with a comprehensive and powerful feature set available for data visualization. R runs on all major operating systems and is used by businesses, researchers, and organizations worldwide.
In view of the growing presence and popularity of multicore and manycore processors, accelerators, and coprocessors, as well as clusters using such computing devices, the development of efficient parallel applications has become a key challenge to be able to exploit the performance of such systems. This book covers the scope of parallel programming for modern high performance computing systems. It first discusses selected and popular state-of-the-art computing devices and systems available today, These include multicore CPUs, manycore (co)processors, such as Intel Xeon Phi, accelerators, such as GPUs, and clusters, as well as programming models supported on these platforms. It next introduces parallelization through important programming paradigms, such as master-slave, geometric Single Program Multiple Data (SPMD) and divide-and-conquer. The practical and useful elements of the most popular and important APIs for programming parallel HPC systems are discussed, including MPI, OpenMP, Pthreads, CUDA, OpenCL, and OpenACC. It also demonstrates, through selected code listings, how selected APIs can be used to implement important programming paradigms. Furthermore, it shows how the codes can be compiled and executed in a Linux environment. The book also presents hybrid codes that integrate selected APIs for potentially multi-level parallelization and utilization of heterogeneous resources, and it shows how to use modern elements of these APIs. Selected optimization techniques are also included, such as overlapping communication and computations implemented using various APIs. Features: Discusses the popular and currently available computing devices and cluster systems Includes typical paradigms used in parallel programs Explores popular APIs for programming parallel applications Provides code templates that can be used for implementation of paradigms Provides hybrid code examples allowing multi-level parallelization Covers the optimization of parallel programs
GPU Parallel Program Development using CUDA teaches GPU programming by showing the differences among different families of GPUs. This approach prepares the reader for the next generation and future generations of GPUs. The book emphasizes concepts that will remain relevant for a long time, rather than concepts that are platform-specific. At the same time, the book also provides platform-dependent explanations that are as valuable as generalized GPU concepts. The book consists of three separate parts; it starts by explaining parallelism using CPU multi-threading in Part I. A few simple programs are used to demonstrate the concept of dividing a large task into multiple parallel sub-tasks and mapping them to CPU threads. Multiple ways of parallelizing the same task are analyzed and their pros/cons are studied in terms of both core and memory operation. Part II of the book introduces GPU massive parallelism. The same programs are parallelized on multiple Nvidia GPU platforms and the same performance analysis is repeated. Because the core and memory structures of CPUs and GPUs are different, the results differ in interesting ways. The end goal is to make programmers aware of all the good ideas, as well as the bad ideas, so readers can apply the good ideas and avoid the bad ideas in their own programs. Part III of the book provides pointer for readers who want to expand their horizons. It provides a brief introduction to popular CUDA libraries (such as cuBLAS, cuFFT, NPP, and Thrust),the OpenCL programming language, an overview of GPU programming using other programming languages and API libraries (such as Python, OpenCV, OpenGL, and Apple's Swift and Metal,) and the deep learning library cuDNN.
The book provides a comprehensive guide to vehicular social networks. The book focuses on a new class of mobile ad hoc networks that exploits social aspects applied to vehicular environments. Selected topics are related to social networking techniques, social-based routing techniques applied to vehicular networks, data dissemination in VSNs, architectures for VSNs, and novel trends and challenges in VSNs. It provides significant technical and practical insights in different aspects from a basic background on social networking, the inter-related technologies and applications to vehicular ad-hoc networks, the technical challenges, implementation and future trends.
Network routing can be broadly categorized into Internet routing,
PSTN routing, and telecommunication transport network routing. This
book systematically considers these routing paradigms, as well as
their interoperability. The authors discuss how algorithms,
protocols, analysis, and operational deployment impact these
approaches. A unique feature of the book is consideration of both
macro-state and micro-state in routing; that is, how routing is
accomplished at the level of networks and how routers or switches
are designed to enable efficient routing.
Although multicore is now a mainstream architecture, there are few textbooks that cover parallel multicore architectures. Filling this gap, Fundamentals of Parallel Multicore Architecture provides all the material for a graduate or senior undergraduate course that focuses on the architecture of multicore processors. The book is also useful as a reference for professionals who deal with programming on multicore or designing multicore chips. The text's coverage of fundamental topics prepares students to study research papers in the multicore architecture area. The text offers many pedagogical features, including: Sufficiently short chapters that can be comfortably read over a weekend Introducing each concept by first describing the problem and building intuition that leads to the need for the concept "Did you know?" boxes that present mini case studies, alternative points of view, examples, and other interesting facts or discussion items Thought-provoking interviews with experts who share their perspectives on multicore architectures in the past, present, and future Online programming assignments and solutions that enhance students' understanding The first several chapters address programming issues in shared memory multiprocessors, such as the programming model and techniques to parallelize regular and irregular applications. The core of the book covers the architectures for shared memory multiprocessors. The final chapter contains interviews with experts in parallel multicore architecture.
This book bridges the gaps between logic, mathematics and computer science by delving into the theory of well-quasi orders, also known as wqos. This highly active branch of combinatorics is deeply rooted in and between many fields of mathematics and logic, including proof theory, commutative algebra, braid groups, graph theory, analytic combinatorics, theory of relations, reverse mathematics and subrecursive hierarchies. As a unifying concept for slick finiteness or termination proofs, wqos have been rediscovered in diverse contexts, and proven to be extremely useful in computer science. The book introduces readers to the many facets of, and recent developments in, wqos through chapters contributed by scholars from various fields. As such, it offers a valuable asset for logicians, mathematicians and computer scientists, as well as scholars and students.
"I highly recommend Mr. Hobbs' book." - Stephen Thomas, PE, Founder and Editor of FunctionalSafetyEngineer.com Safety-critical devices, whether medical, automotive, or industrial, are increasingly dependent on the correct operation of sophisticated software. Many standards have appeared in the last decade on how such systems should be designed and built. Developers, who previously only had to know how to program devices for their industry, must now understand remarkably esoteric development practices and be prepared to justify their work to external auditors. Embedded Software Development for Safety-Critical Systems discusses the development of safety-critical systems under the following standards: IEC 61508; ISO 26262; EN 50128; and IEC 62304. It details the advantages and disadvantages of many architectural and design practices recommended in the standards, ranging from replication and diversification, through anomaly detection to the so-called "safety bag" systems. Reviewing the use of open-source components in safety-critical systems, this book has evolved from a course text used by QNX Software Systems for a training module on building embedded software for safety-critical devices, including medical devices, railway systems, industrial systems, and driver assistance devices in cars. Although the book describes open-source tools for the most part, it also provides enough information for you to seek out commercial vendors if that's the route you decide to pursue. All of the techniques described in this book may be further explored through hundreds of learned articles. In order to provide you with a way in, the author supplies references he has found helpful as a working software developer. Most of these references are available to download for free.
This book gives an overview of best effort data and real-time multipath routing protocols in WMSN. It provides results of recent research in design issues affecting the development of strategic multipath routing protocols that support multimedia data traffic in WMSN from an IoT perspective, plus detailed analysis on the appropriate traffic models.
"Ask not what your compiler can do for you, ask what you can do for your compiler." --John Levesque, Director of Cray's Supercomputing Centers of Excellence The next decade of computationally intense computing lies with more powerful multi/manycore nodes where processors share a large memory space. These nodes will be the building block for systems that range from a single node workstation up to systems approaching the exaflop regime. The node itself will consist of 10's to 100's of MIMD (multiple instruction, multiple data) processing units with SIMD (single instruction, multiple data) parallel instructions. Since a standard, affordable memory architecture will not be able to supply the bandwidth required by these cores, new memory organizations will be introduced. These new node architectures will represent a significant challenge to application developers. Programming for Hybrid Multi/Manycore MPP Systems attempts to briefly describe the current state-of-the-art in programming these systems, and proposes an approach for developing a performance-portable application that can effectively utilize all of these systems from a single application. The book starts with a strategy for optimizing an application for multi/manycore architectures. It then looks at the three typical architectures, covering their advantages and disadvantages. The next section of the book explores the other important component of the target-the compiler. The compiler will ultimately convert the input language to executable code on the target, and the book explores how to make the compiler do what we want. The book then talks about gathering runtime statistics from running the application on the important problem sets previously discussed. How best to utilize available memory bandwidth and virtualization is covered next, along with hybridization of a program. The last part of the book includes several major applications, and examines future hardware advancements and how the application developer may prepare for those advancements.
D2D-based proximity service is a very hot topic with great commercial potential from an application standpoint. Unlike existing books which focus on D2D communications technologies, this book fills a gap by summarizing and analyzing the latest applications and research results in academic, industrial fields, and standardization. The authors present the architecture, fundamental issues, and applications in a D2D networking environment from both application and interdisciplinary points of view.
Along with the increasingly important runtime engines pervasive in our daily-life computing, there is a strong demand from the software community for a solid presentation on the design and implementation of modern virtual machines, including the Java virtual machine, JavaScript engine and Android execution engine. The community expects to see not only formal algorithm description, but also pragmatic code snippets; to understand not only research topics, but also engineering solutions. This book meets these demands by providing a unique description that combines high level design with low level implementations and academic advanced topics with commercial solutions. This book takes a holistic approach to the design of VM architecture, with contents organized into a consistent framework, introducing topics and algorithms in an easily understood step by step process. It focuses on the critical aspects of VM design, which are often overlooked in other works, such as runtime helpers, stack unwinding and native interface. The algorithms are fully illustrated in figures and implemented in easy to digest code snippets, making the abstract concepts tangible and programmable for system software developers.
Computer Systems Architecture provides IT professionals and students with the necessary understanding of computer hardware. It addresses the ongoing issues related to computer hardware and discusses the solutions supplied by the industry. The book describes trends in computing solutions that led to the current available infrastructures, tracing the initial need for computers to recent concepts such as the Internet of Things. It covers computers' data representation, explains how computer architecture and its underlying meaning changed over the years, and examines the implementations and performance enhancements of the central processing unit (CPU). It then discusses the organization, hierarchy, and performance considerations of computer memory as applied by the operating system and illustrates how cache memory significantly improves performance. The author proceeds to explore the bus system, algorithms for ensuring data integrity, input and output (I/O) components, methods for performing I/O, various aspects relevant to software engineering, and nonvolatile storage devices, such as hard drives and technologies for enhancing performance and reliability. He also describes virtualization and cloud computing and the emergence of software-based systems' architectures. Accessible to software engineers and developers as well as students in IT disciplines, this book enhances readers' understanding of the hardware infrastructure used in software engineering projects. It enables readers to better optimize system usage by focusing on the principles used in hardware systems design and the methods for enhancing performance.
Since the publication of the first edition, parallel computing technology has gained considerable momentum. A large proportion of this has come from the improvement in VLSI techniques, offering one to two orders of magnitude more devices than previously possible. A second contributing factor in the fast development of the subject is commercialization. The supercomputer is no longer restricted to a few well-established research institutions and large companies. A new computer breed combining the architectural advantages of the supercomputer with the advance of VLSI technology is now available at very attractive prices. A pioneering device in this development is the transputer, a VLSI processor specifically designed to operate in large concurrent systems. Parallel Computers 2: Architecture, Programming and Algorithms reflects the shift in emphasis of parallel computing and tracks the development of supercomputers in the years since the first edition was published. It looks at large-scale parallelism as found in transputer ensembles. This extensively rewritten second edition includes major new sections on the transputer and the OCCAM language. The book contains specific information on the various types of machines available, details of computer architecture and technologies, and descriptions of programming languages and algorithms. Aimed at an advanced undergraduate and postgraduate level, this handbook is also useful for research workers, machine designers, and programmers concerned with parallel computers. In addition, it will serve as a guide for potential parallel computer users, especially in disciplines where large amounts of computer time are regularly used.
The book provides a bottom-up approach to understanding how a computer works and how to use computing to solve real-world problems. It covers the basics of digital logic through the lens of computer organization and programming. The reader should be able to design his or her own computer from the ground up at the end of the book. Logic simulation with Verilog is used throughout, assembly languages are introduced and discussed, and the fundamentals of computer architecture and embedded systems are touched upon, all in a cohesive design-driven framework suitable for class or self-study.
This book covers the history and recent developments of stochastic computing. Stochastic computing (SC) was first introduced in the 1960s for logic circuit design, but its origin can be traced back to von Neumann's work on probabilistic logic. In SC, real numbers are encoded by random binary bit streams, and information is carried on the statistics of the binary streams. SC offers advantages such as hardware simplicity and fault tolerance. Its promise in data processing has been shown in applications including neural computation, decoding of error-correcting codes, image processing, spectral transforms and reliability analysis. There are three main parts to this book. The first part, comprising Chapters 1 and 2, provides a history of the technical developments in stochastic computing and a tutorial overview of the field for both novice and seasoned stochastic computing researchers. In the second part, comprising Chapters 3 to 8, we review both well-established and emerging design approaches for stochastic computing systems, with a focus on accuracy, correlation, sequence generation, and synthesis. The last part, comprising Chapters 9 and 10, provides insights into applications in machine learning and error-control coding.
Collects the Latest Research Involving the Application of Process Algebra to Computing Exploring state-of-the-art applications, Process Algebra for Parallel and Distributed Processing shows how one formal method of reasoning-process algebra-has become a powerful tool for solving design and implementation challenges of concurrent systems. Parallel ProgrammingDivided into three parts, the book begins by parallelizing an algorithm for the Cell Broadband Engine processor of IBM, Sony, and Toshiba. It also develops a runtime environment that can be ported to different parallel platforms and describes the formal model of action systems. Distributed SystemsThe next part presents a process algebra (mCRL2) that targets distributed applications, looks at how to turn prose descriptions into unambiguous specifications, extends pi-calculus to create a service-oriented mobility abstract machine, and introduces the Channel Ambient Machine for mobile applications. Embedded SystemsThe final section combines state-based Z with the event-based process algebra CSP in a formal methodology called Circus. It also develops a pair of process algebras (PARS) to address the problem of scheduling in real-time embedded systems and emphasizes the reuse of concurrent artifacts across different hardware platforms. Highlighting recent research work, this volume addresses multicore programming problems and the evolution of the growing body of concurrency-enabled languages. It proposes solutions to the problems of designing and implementing today's concurrency-constrained multicore processor and cloud architectures.
The richly illustrated Interactive Web-Based Data Visualization with R, plotly, and shiny focuses on the process of programming interactive web graphics for multidimensional data analysis. It is written for the data analyst who wants to leverage the capabilities of interactive web graphics without having to learn web programming. Through many R code examples, you will learn how to tap the extensive functionality of these tools to enhance the presentation and exploration of data. By mastering these concepts and tools, you will impress your colleagues with your ability to quickly generate more informative, engaging, and reproducible interactive graphics using free and open source software that you can share over email, export to pdf, and more. Key Features: Convert static ggplot2 graphics to an interactive web-based form Link, animate, and arrange multiple plots in standalone HTML from R Embed, modify, and respond to plotly graphics in a shiny app Learn best practices for visualizing continuous, discrete, and multivariate data Learn numerous ways to visualize geo-spatial data This book makes heavy use of plotly for graphical rendering, but you will also learn about other R packages that support different phases of a data science workflow, such as tidyr, dplyr, and tidyverse. Along the way, you will gain insight into best practices for visualization of high-dimensional data, statistical graphics, and graphical perception. The printed book is complemented by an interactive website where readers can view movies demonstrating the examples and interact with graphics.
This book provides readers with a single-source reference to static-single assignment (SSA)-based compiler design. It is the first (and up to now only) book that covers in a deep and comprehensive way how an optimizing compiler can be designed using the SSA form. After introducing vanilla SSA and its main properties, the authors describe several compiler analyses and optimizations under this form. They illustrate how compiler design can be made simpler and more efficient, thanks to the SSA form. This book also serves as a valuable text/reference for lecturers, making the teaching of compilers simpler and more effective. Coverage also includes advanced topics, such as code generation, aliasing, predication and more, making this book a valuable reference for advanced students and practicing engineers. |
You may like...
How to Start a Vending Machine Business…
Walter Grant, Matt Coleman
Hardcover
EAI International Conference on Big Data…
Anandakumar Haldorai, Arulmurugan Ramu, …
Hardcover
R4,074
Discovery Miles 40 740
Real-Time Visual Effects for Game…
Chang-Hun Kim, Sun-Jeong Kim, …
Hardcover
Charge-Trapping Non-Volatile Memories…
Panagiotis Dimitrakis
Hardcover
|