Skip to content
You are not logged in |Login  
     
Limit search to available items
Record:   Prev Next
Resources
More Information
Bestseller
BestsellerE-book
Author Sengupta, Avik, author.

Title Julia high performance : optimizations, distributed computing, multithreading, and GPU programming with Julia 1.0 and beyond / Avik Sengupta.

Publication Info. Birmingham : Packt Publishing Ltd., 2019.

Item Status

Edition Second edition.
Description 1 online resource
Contents Cover; Title Page; Copyright and Credits; Dedication; About Packt; Foreword; Contributors; Table of Contents; Preface; Chapter 1: Julia is Fast; Julia -- fast and dynamic; Designed for speed; JIT and LLVM; Types, type inference, and code specialization; How fast can Julia be?; Summary; Chapter 2: Analyzing Performance; Timing Julia functions; The @time macro; Other time macros; The Julia profiler; Using the profiler; ProfileView; Using Juno for profiling; Using TimerOutputs; Analyzing memory allocation; Using the memory allocation tracker; Statistically accurate benchmarking
Using BenchmarkTools.jlSummary; Chapter 3: Types, Type Inference, and Stability; The Julia type system; Using types; Multiple dispatch; Abstract types; Julia's type hierarchy; Composite and immutable types; Type parameters; Type inference; Type-stability; Definitions; Fixing type instability; The performance pitfalls; Identifying type stability; Loop variables; Kernel methods and function barriers; Types in storage locations; Arrays; Composite types; Parametric composite types; Summary; Chapter 4: Making Fast Function Calls; Using globals; The trouble with globals
Fixing performance issues with globalsInlining; Default inlining; Controlling inlining; Disabling inlining; Constant propagation; Using macros for performance; The Julia compilation process; Using macros; Evaluating a polynomial; Horner's method; The Horner macro; Generated functions; Using generated functions; Using generated functions for performance; Using keyword arguments; Summary; Chapter 5: Fast Numbers; Numbers in Julia, their layout, and storage; Integers; Integer overflow; BigInt; The floating point; Floating point accuracy; Unsigned integers; Trading performance for accuracy
The @fastmath macroThe K-B-N summation; Subnormal numbers; Subnormal numbers to zero; Summary; Chapter 6: Using Arrays; Array internals in Julia; Array representation and storage; Column-wise storage; Adjoints; Array initialization; Bounds checking; Removing the cost of bounds checking; Configuring bound checks at startup; Allocations and in-place operations; Preallocating function output; sizehint!; Mutating functions; Broadcasting; Array views; SIMD parallelization (AVX2, AVX512); SIMD.jl; Specialized array types; Static arrays; Structs of arrays; Yeppp!
Writing generic library functions with arraysSummary; Chapter 7: Accelerating Code with the GPU; Technical requirements; Getting started with GPUs; CUDA and Julia; CuArrays; Monte Carlo simulation on the GPU; Writing your own kernels; Measuring GPU performance; Performance tips; Scalar iteration; Combining kernels; Processing more data; Deep learning on the GPU; ArrayFire; Summary; Chapter 8: Concurrent Programming with Tasks; Tasks; Using tasks; The task life cycle; task_local_storage; Communicating between tasks; Task iteration; High-performance I/O
Note Port sharing for high-performance web serving
Summary Julia is a high-level, high-performance dynamic programming language for numerical computing. This book will help you understand the performance characteristics of your Julia programs and achieve near-C levels of performance in Julia.
Note Includes index.
Local Note eBooks on EBSCOhost EBSCO eBook Subscription Academic Collection - North America
Subject Julia (Computer program language)
Application software -- Development.
Application software -- Development
Julia (Computer program language)
Added Author Edelman, Alan.
Other Form: Print version: Sengupta, Avik. Julia High Performance : Optimizations, Distributed Computing, Multithreading, and GPU Programming with Julia 1. 0 and Beyond, 2nd Edition. Birmingham : Packt Publishing, Limited, ©2019 9781788298117
ISBN 9781788292306 (electronic book)
1788292308 (electronic book)
9781788298117 (paperback)