[VPM] Tue, 2007 Sep 18th, 7:00pm - Nigel Horspool: A New Age for Code Optimization

Darren Duncan darren at DarrenDuncan.net
Fri Sep 14 20:59:32 PDT 2007


This message is forwarded from the Recreational Computer Science
Society mailing list. -- Darren Duncan

-------------

Date: Fri, 14 Sep 2007 18:41:11 -0700
From: "Peter van Hardenberg" <pvh at pvh.ca>
To: reccompsci at googlegroups.com
Subject: [reccompsci] September 18th -- Nigel Horspool: A New Age for Code
  Optimization
Mailing-List: list reccompsci at googlegroups.com;
	contact reccompsci-owner at googlegroups.com
List-Id: <reccompsci.googlegroups.com>
List-Post: <mailto:reccompsci at googlegroups.com>
List-Help: <mailto:reccompsci-help at googlegroups.com>
List-Unsubscribe: <http://googlegroups.com/group/reccompsci/subscribe>,
	<mailto:reccompsci-unsubscribe at googlegroups.com>


Hi everyone,

I got an abstract for Dr. Horspool's talk today. The talk is directed
at a general computer science audience -- no experience with compiler
theory will be expected of you.

Abstract follows. See you on Tuesday Sept. 18th, 7PM, ECS104.

-pvh

-----------------
A New Age for Code Optimization

Nigel Horspool
Professor, Department of Computer Science, University of Victoria

Abstract

When high-level programming languages were first introduced, programmers
were concerned that programs would not execute as efficiently as their
hand-written assembly language counterparts.  The development of
optimizing compilers, beginning with IBM's Fortran compilers, did much
to allay that fear.  Over the years, ever more optimizations have been
developed and incorporated into compilers, leading people to believe
that code optimization was becoming a dead subject.

The widespread use of Java, and similar languages like C#, has changed
all that.  The Java compiler translates the classes of a program into
bytecode files, and those bytecode files are executed by the Java
Virtual Machine (JVM).  The opportunities for optimizing bytecode are
very limited.  However, the JVM has the opportunity to monitor the
executing program.  Such monitoring allows the JVM to concentrate on the
10% of the program where 90% of the execution time is spent, and to
generate optimized machine code for those parts of the program.  The JVM
has an even bigger advantage.  It can observe what values are actually
being passed as parameters to methods and what values are held by
variables.  Then this knowledge allows even better code to be
generated.  This feedback directed optimization (FDO) approach is making
Java code as fast as code written in any programming language, and
sometimes much faster.

This talk will introduce FDO and will describe a new optimization for
Java programs which enables them to execute the Visitor pattern more
efficiently.

-- 
Peter van Hardenberg
Victoria, BC, Canada
"Everything was beautiful, and nothing hurt." -- Kurt Vonnegut

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google 
Groups "Recreational Computer Science Society" group.
To post to this group, send email to reccompsci at googlegroups.com
To unsubscribe from this group, send email to 
reccompsci-unsubscribe at googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/reccompsci?hl=en
-~----------~----~----~----~------~----~------~--~---



More information about the Victoria-pm mailing list