skip to content
Rust High Performance : Learn to skyrocket the performance of your Rust applications. Preview this item
ClosePreview this item
Checking...

Rust High Performance : Learn to skyrocket the performance of your Rust applications.

Author: Iban Eguia Moraza
Publisher: Birmingham : Packt Publishing, 2018.
Edition/Format:   eBook : Document : EnglishView all editions and formats
Summary:
Sometimes it's difficult to get the best performance out of Rust. This book teaches you how to optimize the speed of your Rust code to the level of languages such as C/C++. You'll understand and fix common pitfalls, learn how to improve your productivity by using metaprogramming, and speed up your code by concurrently executing parts of it ...
Rating:

(not yet rated) 0 with reviews - Be the first.

Subjects
More like this

Find a copy online

Links to this item

Find a copy in the library

&AllPage.SpinnerRetrieving; Finding libraries that hold this item...

Details

Genre/Form: Electronic books
Additional Physical Format: Print version:
Eguia Moraza, Iban.
Rust High Performance : Learn to skyrocket the performance of your Rust applications.
Birmingham : Packt Publishing, ©2018
Material Type: Document, Internet resource
Document Type: Internet Resource, Computer File
All Authors / Contributors: Iban Eguia Moraza
ISBN: 9781788478236 1788478231
OCLC Number: 1030821097
Notes: Avoiding boilerplate code for the builder pattern.
Description: 1 online resource (265 pages)
Contents: Cover; Title Page; Copyright and Credits; Dedication; Packt Upsell; Contributors; Table of Contents; Preface; Chapter 1: Common Performance Pitfalls; Asking the Rust compiler about performance; Optimizations; Build configuration; Optimization level; Debug information; Link-time optimizations; Debug assertions; Panic behavior; Runtime library paths; Translation issues; Indexing degradations; Using iterators; Iterator adaptors; Real-life example; Specialized adaptors; Interaction between adaptors; Itertools; Borrowing degradations; Cyclomatic complexity; Summary. Chapter 2: Extra Performance EnhancementsCompile-time checks; Sequential state machines; Complex state machines; Real-life type system check example; Extra performance tips; Using closures to avoid runtime evaluation; Unstable sorting; Map hashing; Perfect hash functions; Standard library collections; Sequences; Maps; Sets; Summary; Chapter 3: Memory Management in Rust; Mastering the borrow checker; Allocations; Mutability, borrowing, and owning; Lifetimes; Memory representation; Alignment; Complex enumerations; Unions; Shared pointers; The cell module; Cells; RefCell; The rc module; Summary. Chapter 4: Lints and ClippyUsing Rust compiler lints; Lints; Avoiding anonymous parameters; Avoiding heap allocated box pointers; Avoiding missing implementations; Enforcing documentation; Pointing out trivial casts; Linting unsafe code blocks; Unused lints; Variant size differences; Lint groups; Clippy; Installation; Configuration; Lints; Casting; Bad practice; Performance lints; Unwraps; Shadowing; Integer overflow; Lint groups; Summary; Chapter 5: Profiling Your Rust Application; Understanding the hardware; Understanding how the CPU works; Speeding up memory access with the cache. Cache missesHow can you fix it?; Cache invalidation; CPU pipeline; Branch prediction; The relevance of branch prediction for our code; Profiling tools; Valgrind; Callgrind; Cachegrind; OProfile; Summary; Chapter 6: Benchmarking; Selecting what to benchmark; Benchmarking in nightly Rust; Benchmarking in stable Rust; Continuous integration for benchmarks; Travis-CI integration; Benchmark statistics with Criterion; Summary; Chapter 7: Built-in Macros and Configuration Items; Understanding attributes; Trait derivations; Crate features; Configuration attributes; Macros; Console printing. String formattingCompilation environment; Loading byte arrays and strings at compile time; Code paths; Checking preconditions and postconditions; Others; Nightly Rust; Conservative trait return; Constant functions; Inline assembly and naked functions; Using bigger integers; Single instruction multiple data; Allocation API; Compiler plugins; Summary; Chapter 8: Must-Have Macro Crates; Working with external data; Data serialization and deserialization; Serializing and deserializing complex structures; Parsing byte streams; Learning about useful small crates; Creating lazily evaluated statics.

Abstract:

Sometimes it's difficult to get the best performance out of Rust. This book teaches you how to optimize the speed of your Rust code to the level of languages such as C/C++. You'll understand and fix  Read more...

Reviews

User-contributed reviews
Retrieving GoodReads reviews...
Retrieving DOGObooks reviews...

Tags

Be the first.
Confirm this request

You may have already requested this item. Please select Ok if you would like to proceed with this request anyway.

Linked Data


Primary Entity

<http://www.worldcat.org/oclc/1030821097> # Rust High Performance : Learn to skyrocket the performance of your Rust applications.
    a schema:CreativeWork, schema:Book, schema:MediaObject ;
    library:oclcnum "1030821097" ;
    library:placeOfPublication <http://experiment.worldcat.org/entity/work/data/4914681880#Place/birmingham> ; # Birmingham
    library:placeOfPublication <http://id.loc.gov/vocabulary/countries/enk> ;
    schema:about <http://experiment.worldcat.org/entity/work/data/4914681880#Topic/computer_programming_software_development> ; # Computer programming--software development
    schema:about <http://experiment.worldcat.org/entity/work/data/4914681880#Topic/programming_&_scripting_languages_general> ; # Programming & scripting languages: general
    schema:about <http://experiment.worldcat.org/entity/work/data/4914681880#Topic/computers_programming_parallel> ; # Computers--Programming--Parallel
    schema:about <http://experiment.worldcat.org/entity/work/data/4914681880#Topic/computers_programming_languages_c> ; # Computers--Programming Languages--C
    schema:about <http://experiment.worldcat.org/entity/work/data/4914681880#Topic/computers_software_development_&_engineering_tools> ; # Computers--Software Development & Engineering--Tools
    schema:about <http://experiment.worldcat.org/entity/work/data/4914681880#Topic/application_software_development> ; # Application software--Development
    schema:about <http://experiment.worldcat.org/entity/work/data/4914681880#Topic/programming_languages_electronic_computers> ; # Programming languages (Electronic computers)
    schema:about <http://experiment.worldcat.org/entity/work/data/4914681880#Topic/computer_programming> ; # Computer programming
    schema:about <http://experiment.worldcat.org/entity/work/data/4914681880#Topic/parallel_processing> ; # Parallel processing
    schema:bookFormat schema:EBook ;
    schema:creator <http://experiment.worldcat.org/entity/work/data/4914681880#Person/eguia_moraza_iban> ; # Iban Eguia Moraza
    schema:datePublished "2018" ;
    schema:description "Sometimes it's difficult to get the best performance out of Rust. This book teaches you how to optimize the speed of your Rust code to the level of languages such as C/C++. You'll understand and fix common pitfalls, learn how to improve your productivity by using metaprogramming, and speed up your code by concurrently executing parts of it ..."@en ;
    schema:description "Cover; Title Page; Copyright and Credits; Dedication; Packt Upsell; Contributors; Table of Contents; Preface; Chapter 1: Common Performance Pitfalls; Asking the Rust compiler about performance; Optimizations; Build configuration; Optimization level; Debug information; Link-time optimizations; Debug assertions; Panic behavior; Runtime library paths; Translation issues; Indexing degradations; Using iterators; Iterator adaptors; Real-life example; Specialized adaptors; Interaction between adaptors; Itertools; Borrowing degradations; Cyclomatic complexity; Summary."@en ;
    schema:exampleOfWork <http://worldcat.org/entity/work/id/4914681880> ;
    schema:genre "Electronic books"@en ;
    schema:inLanguage "en" ;
    schema:isSimilarTo <http://worldcat.org/entity/work/data/4914681880#CreativeWork/rust_high_performance_learn_to_skyrocket_the_performance_of_your_rust_applications> ;
    schema:name "Rust High Performance : Learn to skyrocket the performance of your Rust applications."@en ;
    schema:productID "1030821097" ;
    schema:publication <http://www.worldcat.org/title/-/oclc/1030821097#PublicationEvent/birmingham_packt_publishing_2018> ;
    schema:publisher <http://experiment.worldcat.org/entity/work/data/4914681880#Agent/packt_publishing> ; # Packt Publishing
    schema:url <https://proquest.safaribooksonline.com/9781788399487> ;
    schema:url <http://public.eblib.com/choice/publicfullrecord.aspx?p=5332145> ;
    schema:url <http://www.vlebooks.com/vleweb/product/openreader?id=none&isbn=9781788478236> ;
    schema:url <http://ra.ocls.ca/ra/login.aspx?inst=conestoga&url=http://proquest.safaribooksonline.com/9781788399487> ;
    schema:url <http://public.ebookcentral.proquest.com/choice/publicfullrecord.aspx?p=5332145> ;
    schema:workExample <http://worldcat.org/isbn/9781788478236> ;
    wdrs:describedby <http://www.worldcat.org/title/-/oclc/1030821097> ;
    .


Related Entities

<http://experiment.worldcat.org/entity/work/data/4914681880#Agent/packt_publishing> # Packt Publishing
    a bgn:Agent ;
    schema:name "Packt Publishing" ;
    .

<http://experiment.worldcat.org/entity/work/data/4914681880#Person/eguia_moraza_iban> # Iban Eguia Moraza
    a schema:Person ;
    schema:familyName "Eguia Moraza" ;
    schema:givenName "Iban" ;
    schema:name "Iban Eguia Moraza" ;
    .

<http://experiment.worldcat.org/entity/work/data/4914681880#Topic/application_software_development> # Application software--Development
    a schema:Intangible ;
    schema:name "Application software--Development"@en ;
    .

<http://experiment.worldcat.org/entity/work/data/4914681880#Topic/computer_programming> # Computer programming
    a schema:Intangible ;
    schema:name "Computer programming"@en ;
    .

<http://experiment.worldcat.org/entity/work/data/4914681880#Topic/computer_programming_software_development> # Computer programming--software development
    a schema:Intangible ;
    schema:name "Computer programming--software development"@en ;
    .

<http://experiment.worldcat.org/entity/work/data/4914681880#Topic/computers_programming_languages_c> # Computers--Programming Languages--C
    a schema:Intangible ;
    schema:name "Computers--Programming Languages--C"@en ;
    .

<http://experiment.worldcat.org/entity/work/data/4914681880#Topic/computers_programming_parallel> # Computers--Programming--Parallel
    a schema:Intangible ;
    schema:name "Computers--Programming--Parallel"@en ;
    .

<http://experiment.worldcat.org/entity/work/data/4914681880#Topic/computers_software_development_&_engineering_tools> # Computers--Software Development & Engineering--Tools
    a schema:Intangible ;
    schema:name "Computers--Software Development & Engineering--Tools"@en ;
    .

<http://experiment.worldcat.org/entity/work/data/4914681880#Topic/parallel_processing> # Parallel processing
    a schema:Intangible ;
    schema:name "Parallel processing"@en ;
    .

<http://experiment.worldcat.org/entity/work/data/4914681880#Topic/programming_&_scripting_languages_general> # Programming & scripting languages: general
    a schema:Intangible ;
    schema:name "Programming & scripting languages: general"@en ;
    .

<http://experiment.worldcat.org/entity/work/data/4914681880#Topic/programming_languages_electronic_computers> # Programming languages (Electronic computers)
    a schema:Intangible ;
    schema:name "Programming languages (Electronic computers)"@en ;
    .

<http://ra.ocls.ca/ra/login.aspx?inst=conestoga&url=http://proquest.safaribooksonline.com/9781788399487>
    rdfs:comment "5 simultaneous users allowed through Safari Technical Books" ;
    .

<http://worldcat.org/entity/work/data/4914681880#CreativeWork/rust_high_performance_learn_to_skyrocket_the_performance_of_your_rust_applications>
    a schema:CreativeWork ;
    rdfs:label "Rust High Performance : Learn to skyrocket the performance of your Rust applications." ;
    schema:description "Print version:" ;
    schema:isSimilarTo <http://www.worldcat.org/oclc/1030821097> ; # Rust High Performance : Learn to skyrocket the performance of your Rust applications.
    .

<http://worldcat.org/isbn/9781788478236>
    a schema:ProductModel ;
    schema:isbn "1788478231" ;
    schema:isbn "9781788478236" ;
    .

<http://www.worldcat.org/title/-/oclc/1030821097>
    a genont:InformationResource, genont:ContentTypeGenericResource ;
    schema:about <http://www.worldcat.org/oclc/1030821097> ; # Rust High Performance : Learn to skyrocket the performance of your Rust applications.
    schema:dateModified "2019-05-11" ;
    void:inDataset <http://purl.oclc.org/dataset/WorldCat> ;
    .


Content-negotiable representations

Close Window

Please sign in to WorldCat 

Don't have an account? You can easily create a free account.