This page is no longer maintained — Please continue to the home page at www.scala-lang.org

Scala Compiler Performance Analysis

2 replies
William Louth (...
Joined: 2012-02-08,
User offline. Last seen 42 years 45 weeks ago.

Hi All,

Not sure you all have seen this but we've been publishing a series of
articles on the performance analysis of the existing 2.9.1 scala
compiler code base. We did not set out to address all performance
concerns of the compiler but to look at the issues one has in measuring
(in our case metering) scala derived class bytecode. There has been a
lot said about complexity but rarely has this actually looked at how
does one make sense of the execution of such bytecode when traceability
back to source and constructs is not as easy as it has been in Java
itself with the mapping being explicit, direct and immediate. Definitely
an address that needs attention when production deployments grow bigger.

We should have the last 3 remaining parts published by Monday next week.
Hopefully the data that is presented will give you some direction in any
proposed tuning (or rewrite) efforts.

Case Study: Scala Compiler – Part 7
How to identify particular execution performance outliners assessing
differences and similarities.
http://www.jinspired.com/site/case-study-scala-compiler-part-7

Case Study: Scala Compiler – Part 6
How to manage performance measurement costs via inline optimizations and
budget control.
http://www.jinspired.com/site/case-study-scala-compiler-part-6

Case Study: Scala Compiler – Part 5
How to eliminate noise or redundant data from a performance model whilst
controlling overhead.
http://www.jinspired.com/site/case-study-scala-compiler-part-5

Case Study: Scala Compiler – Part 4
How to effectively profile software balancing coverage, comprehension,
integrity and validity.
http://www.jinspired.com/site/case-study-scala-compiler-part-4

Case Study: Scala Compiler – Part 3
How to identify the major execution phases within a software’s execution
of a request, task or job.
http://www.jinspired.com/site/case-study-scala-compiler-part-3

Case Study: Scala Compiler – Part 2
How to identify the main execution path ways and perimeters in a very
large and complex code base.
http://www.jinspired.com/site/case-study-scala-compiler-part-2

Case Study: Scala’s Compiler – Part 1
How to analyze the performance behavior of software without actually
timing the execution of methods.
http://www.jinspired.com/site/case-study-scalas-compiler-part-1

Case Study: Scala’s Compiler – A Preamble
An intro to a series of articles on the performance analysis of Scala’s
compiler in which problematic behavioral patterns are identified.
http://www.jinspired.com/site/case-study-scalas-compiler-a-preamble

Viktor Klang
Joined: 2008-12-17,
User offline. Last seen 1 year 27 weeks ago.
Re: Scala Compiler Performance Analysis

Looking forward to the actual analysis!

On Wed, Feb 8, 2012 at 6:08 PM, William Louth (JINSPIRED.COM)
wrote:
> Hi All,
>
> Not sure you all have seen this but we've been publishing a series of
> articles on the performance analysis of the existing 2.9.1 scala compiler
> code base. We did not set out to address all performance concerns of the
> compiler but to look at the issues one has in measuring (in our case
> metering) scala derived class bytecode. There has been a lot said about
> complexity but rarely has this actually looked at how does one make sense of
> the execution of such bytecode when traceability back to source and
> constructs is not as easy as it has been in Java itself with the mapping
> being explicit, direct and immediate. Definitely an address that needs
> attention when production deployments grow bigger.
>
> We should have the last 3 remaining parts published by Monday next week.
> Hopefully the data that is presented will give you some direction in any
> proposed tuning (or rewrite) efforts.
>
> Case Study: Scala Compiler – Part 7
> How to identify particular execution performance outliners assessing
> differences and similarities.
> http://www.jinspired.com/site/case-study-scala-compiler-part-7
>
> Case Study: Scala Compiler – Part 6
> How to manage performance measurement costs via inline optimizations and
> budget control.
> http://www.jinspired.com/site/case-study-scala-compiler-part-6
>
> Case Study: Scala Compiler – Part 5
> How to eliminate noise or redundant data from a performance model whilst
> controlling overhead.
> http://www.jinspired.com/site/case-study-scala-compiler-part-5
>
> Case Study: Scala Compiler – Part 4
> How to effectively profile software balancing coverage, comprehension,
> integrity and validity.
> http://www.jinspired.com/site/case-study-scala-compiler-part-4
>
> Case Study: Scala Compiler – Part 3
> How to identify the major execution phases within a software’s execution of
> a request, task or job.
> http://www.jinspired.com/site/case-study-scala-compiler-part-3
>
> Case Study: Scala Compiler – Part 2
> How to identify the main execution path ways and perimeters in a very large
> and complex code base.
> http://www.jinspired.com/site/case-study-scala-compiler-part-2
>
> Case Study: Scala’s Compiler – Part 1
> How to analyze the performance behavior of software without actually timing
> the execution of methods.
> http://www.jinspired.com/site/case-study-scalas-compiler-part-1
>
> Case Study: Scala’s Compiler – A Preamble
> An intro to a series of articles on the performance analysis of Scala’s
> compiler in which problematic behavioral patterns are identified.
> http://www.jinspired.com/site/case-study-scalas-compiler-a-preamble

William Louth (...
Joined: 2012-02-08,
User offline. Last seen 42 years 45 weeks ago.
Re: Scala Compiler Performance Analysis

Copyright © 2012 École Polytechnique Fédérale de Lausanne (EPFL), Lausanne, Switzerland