C++ Template Metaprogramming in Practice: A Deep Learning Framework

Li Wei (Birkbeck, University of London, UK)

C++ Template Metaprogramming in Practice: A Deep Learning Framework
Format
Hardback
Publisher
Taylor & Francis Ltd
Country
United Kingdom
Published
2 December 2020
Pages
308
ISBN
9780367609566

C++ Template Metaprogramming in Practice: A Deep Learning Framework

Li Wei (Birkbeck, University of London, UK)

Using the implementation of a deep learning framework as an example, C++ Template Metaprogramming in Practice: A Deep Learning Framework explains the application of metaprogramming in a relatively large project and emphasizes ways to optimize systems performance. The book is suitable for developers with a basic knowledge of C++. Developers familiar with mainstream deep learning frameworks can also refer to this book to compare the differences between the deep learning framework implemented with metaprogramming and compile-time computing with deep learning frameworks using object-oriented methods.

Consisting of eight chapters, the book starts with two chapters discussing basic techniques of metaprogramming and compile-time computing. The rest of the book’s chapters focus on the practical application of metaprogramming in a deep learning framework. It examines rich types and systems, expression templates, and writing complex meta-functions, as well as such topics as:

Heterogeneous dictionaries and policy templates

An introduction to deep learning

Type system and basic data types

Operations and expression templates

Basic layers

Composite and recurrent layers

Evaluation and its optimization

Metaprogramming can construct flexible and efficient code. For C++ developers who are familiar with object-oriented programming, the main difficulty in learning and mastering C++ metaprogramming is establishing the thinking mode of functional programming. The meta-programming approach involved at compile time is functional, which means that the intermediate results of the construction cannot be changed, and the impact may be greater than expected. This book enables C++ programmers to develop a functional mindset and metaprogramming skills. The book also discusses the development cost and use cost of metaprogramming and provides workarounds for minimizing these costs.

This item is not currently in-stock. It can be ordered online and is expected to ship in approx 2 weeks

Our stock data is updated periodically, and availability may change throughout the day for in-demand items. Please call the relevant shop for the most current stock information. Prices are subject to change without notice.

Sign in or become a Readings Member to add this title to a wishlist.