HOME SCALA & F# JAVA .NET WEB GROOVY & GRAILS ANDROID & IOS NOSQL ARCHITECTURE AGILE & SCRUM AGILE DEVELOPER  
In The Brain of Iulian Dragos: Scala - Performance improvements of a factor of 4 to 30, Boxing and Specialization
Scala - Performance improvements of a factor of 4 to 30, Boxing and Specialization
Before 2.8, the scala compiler compiled generic classes using type erasure, just like Java. However, there is a significant performance drop for primitive types: in order to satisfy the JVM requirements, primitive values need to be boxed when they enter generic code.

Boxing means wrapping a primitive value in a heap-allocated object. Whenever code operates on such values, it needs first to extract the value from the object, operate on it, then box it back.

Specialization ensures that boxing does not happen, by generating specialized versions of generic code.

Performance improvements may reach an order of magnitude.

In this talk Iulian will look at several specialized classes in the standard library, he will explain how specialization works, the benefits and some potential traps.

Just a thought . . . If you enjoy this talk, you might also be interested in:

ABOUT IULIAN DRAGOS
Iulian Dragos is a key member of Martin Odersky’s EPFL's Scala team. For the last six years he has been the main contributor for many critical Scala components including the compiler backend, its optimizer and the Eclipse build manager.
More about Iulian Dragos
PODCAST SCALA - PERFORMANCE IMPROVEMENTS OF A FACTOR OF 4 TO 30, BOXING AND SPECIALIZATION
SCALA & F# PODCASTS
 :Be a better developer, Be a better developer
: 21st May 2013
View Podcast: Be a better developer,
 :Developing Python with PyDev, Developing Python with PyDev
: 21st May 2013
View Podcast: Developing Python with PyDev,
Yodit Stanton:Machine Learning with Storm + Redis, Machine Learning with Storm + Redis
Yodit Stanton : 7th May 2013
View Podcast: Machine Learning with Storm + Redis,
Bruce Durling:Cascalog for the 80% of Data Science, Cascalog for the 80% of Data Science
Bruce Durling : 7th May 2013
View Podcast: Cascalog for the 80% of Data Science,
Adam Mlocek:F# embedded in Excel, F# embedded in Excel
Adam Mlocek : 25th Apr 2013
View Podcast: F# embedded in Excel,
Adam Mlocek:F# embedded in Excel part 2, F# embedded in Excel part 2
Adam Mlocek : 25th Apr 2013
View Podcast: F# embedded in Excel part 2,
Paul Brian:Pitfalls Of Using Frameworks, Pitfalls Of Using Frameworks
Paul Brian : 18th Apr 2013
View Podcast: Pitfalls Of Using Frameworks,
Emil Vaughan:Adventures with Cython, Adventures with Cython
Emil Vaughan : 18th Apr 2013
View Podcast: Adventures with Cython,
Kris Saxton:My experience of using server management framework, Salt, Using server management framework, Salt
Kris Saxton : 18th Apr 2013
View Podcast: My experience of using server management framework, Salt,
Phil Trelford:Try F# Hands On, Try F# Hands On
Phil Trelford : 11th Apr 2013
Podcast Coming Soon: Try F# Hands On,
Jon Pretty:Rapture I/O, Rapture I/O
Jon Pretty : 10th Apr 2013
View Podcast: Rapture I/O,
Andres Löh:Datatype-Generic Programming in Haskell, Datatype-Generic Programming in Haskell
Andres Löh : 9th Apr 2013
View Podcast: Datatype-Generic Programming in Haskell,
Aslak Hellesøy:Keynote: The Cucumber Ecosystem, Keynote: The Cucumber Ecosystem
Aslak Hellesøy : 4th Apr 2013
View Podcast: Keynote: The Cucumber Ecosystem,
Matt Wynne:Why your step definitions should be one-liners and other pro tips, Why your step definitions should be one-
Matt Wynne : 4th Apr 2013
View Podcast: Why your step definitions should be one-liners and other pro tips,
Andrew  Premdas:Working in the Cucumber World, Working in the Cucumber World
Andrew Premdas : 4th Apr 2013
View Podcast: Working in the Cucumber World,
OTHER SCALA & F# EVENTS
F#unctional Londoners Meetup Group:F# Type Providers Hands On, F#unctional Londoners Meetup Group
FREE EVENT: F# Type Providers Hands On
London, Thursday, May 23rd
F#unctional Londoners Meetup Group:F# on iPad and iPhone with Xamarin Studio, F#unctional Londoners Meetup Group
FREE EVENT: F# on iPad and iPhone with Xam
London, Thursday, May 30th
Jon Pither Functional Programming in the enterprise,  Functional Programming in the enterprise
FREE EVENT: In The Brain of Jon Pither
London, Monday, June 3rd
The London Clojure Community:Deuce is (not yet) Emacs under Clojure, The London Clojure Community
FREE EVENT: Deuce is (not yet) Emacs under
London, Tuesday, June 4th
Philipp Haller:Typesafe's Scaling up with Akka and Scala,  Typesafe's Scaling up with Akka & Scala
2 DAY COURSE. Featuring Philipp Haller
London, Wednesday, June 5th
Martin Thompson:Writing Concurrent Code with Lock-Free Algorithms with Martin Thompson,  Writing Concurrent Code with Lock-Free Algorithms
3 DAY COURSE. Featuring Martin Thompson
London, Wednesday, June 5th
Philipp Haller Simplifying Asynchronous Code with Scala Async,  Simplifying Asynchronous Code with Scala Async
FREE EVENT: In The Brain of Philipp Haller
London, Wednesday, June 5th
Scala Days NYC - June 10-12th, Scala Days NYC - June 10-12th
CONFERENCE (3 DAYS)
New York, Monday, June 10th BOOK NOW!
© Copyright 2003-2013, Skills Matter Ltd
About Us  Jobs  Find Us  Meeting & Training Rooms  Newsletter  Jobs: Sales Executive  Jobs: Student SkillsCaster  jobs - junior event coordinator  Open Source Journal  Jobs: Sponsorship Development  jobs: Marketing & Sales Graduate Internship  Jobs: HR Manager  jobs-Join Our Dev Team  DevOps Engineer  Front-End Engineer  Test Engineer