Julia High Performance

Design and develop high performing programs with Julia

Julia High Performance

This ebook is included in a Mapt subscription
Avik Sengupta

4 customer reviews
Design and develop high performing programs with Julia
$27.99
$34.99
RRP $27.99
RRP $34.99
eBook
Print + eBook
Subscribe and access every Packt eBook & Video.
 
  • 4,000+ eBooks & Videos
  • 40+ New titles a month
  • 1 Free eBook/Video to keep every month
Find out moreStart Free Trial
 
Preview in Mapt

Book Details

ISBN 139781785880919
Paperback132 pages

Book Description

Julia is a high performance, high-level dynamic language designed to address the requirements of high-level numerical and scientific computing. Julia brings solutions to the complexities faced by developers while developing elegant and high performing code.

Julia High Performance will take you on a journey to understand the performance characteristics of your Julia programs, and enables you to utilize the promise of near C levels of performance in Julia.

You will learn to analyze and measure the performance of Julia code, understand how to avoid bottlenecks, and design your program for the highest possible performance. In this book, you will also see how Julia uses type information to achieve its performance goals, and how to use multuple dispatch to help the compiler to emit high performance machine code. Numbers and their arrays are obviously the key structures in scientific computing – you will see how Julia’s design makes them fast. The last chapter will give you a taste of Julia’s distributed computing capabilities.

Table of Contents

Chapter 1: Julia is Fast
Julia – fast and dynamic
Designed for speed
How fast can Julia be?
Summary
Chapter 2: Analyzing Julia Performance
Timing Julia code
The Julia profiler
Analyzing memory allocation
Statistically accurate benchmarking
Summary
Chapter 3: Types in Julia
The Julia type system
Type-stability
Kernel methods
Types in storage locations
Summary
Chapter 4: Functions and Macros – Structuring Julia Code for High Performance
Using globals
Inlining
Closures and anonymous functions
Using macros for performance
Generated functions
Summary
Chapter 5: Fast Numbers
Numbers in Julia
Trading performance for accuracy
Subnormal numbers
Summary
Chapter 6: Fast Arrays
Array internals in Julia
Bound checking
Allocations and in-place operations
Array views
SIMD parallelization
Yeppp!
Writing generic library functions with arrays
Summary
Chapter 7: Beyond the Single Processor
Parallelism in Julia
Programming parallel tasks
Shared arrays
Summary

What You Will Learn

  • Discover the secrets behind Julia’s speed
  • Get a sense of the possibilities and limitations of Julia’s performance
  • Analyze the performance of Julia programs
  • Measure the time and memory taken by Julia programs
  • Create fast machine code using Julia’s type information
  • Define and call functions without compromising Julia’s performance
  • Understand number types in Julia
  • Use Julia arrays to write high performance code
  • Get an overview of Julia’s distributed computing capabilities

Authors

Table of Contents

Chapter 1: Julia is Fast
Julia – fast and dynamic
Designed for speed
How fast can Julia be?
Summary
Chapter 2: Analyzing Julia Performance
Timing Julia code
The Julia profiler
Analyzing memory allocation
Statistically accurate benchmarking
Summary
Chapter 3: Types in Julia
The Julia type system
Type-stability
Kernel methods
Types in storage locations
Summary
Chapter 4: Functions and Macros – Structuring Julia Code for High Performance
Using globals
Inlining
Closures and anonymous functions
Using macros for performance
Generated functions
Summary
Chapter 5: Fast Numbers
Numbers in Julia
Trading performance for accuracy
Subnormal numbers
Summary
Chapter 6: Fast Arrays
Array internals in Julia
Bound checking
Allocations and in-place operations
Array views
SIMD parallelization
Yeppp!
Writing generic library functions with arrays
Summary
Chapter 7: Beyond the Single Processor
Parallelism in Julia
Programming parallel tasks
Shared arrays
Summary

Book Details

ISBN 139781785880919
Paperback132 pages
Read More
From 4 reviews

Read More Reviews