TIMING TRIALS, OR THE TRIALS OF TIMING - EXPERIMENTS WITH SCRIPTING AND USER-INTERFACE LANGUAGES

Citation
Bw. Kernighan et Cj. Vanwyk, TIMING TRIALS, OR THE TRIALS OF TIMING - EXPERIMENTS WITH SCRIPTING AND USER-INTERFACE LANGUAGES, Software, practice & experience, 28(8), 1998, pp. 819-843
Citations number
12
Categorie Soggetti
Computer Science Software Graphycs Programming","Computer Science Software Graphycs Programming
ISSN journal
00380644
Volume
28
Issue
8
Year of publication
1998
Pages
819 - 843
Database
ISI
SICI code
0038-0644(1998)28:8<819:TTOTTO>2.0.ZU;2-T
Abstract
This paper describes some basic experiments to see how fast various po pular scripting and user-interface languages run on a spectrum of repr esentative tasks. We found enormous variation in performance, dependin g on many factors, some uncontrollable and even unknowable. There seem s to be little hope of predicting performance in other than a most gen eral way; if there is a single clear conclusion, it is that no benchma rk result should ever be taken at face value. A few general principles hold: Compiled code usually runs faster than interpreted code: the mo re a program has been 'compiled' before it is executed, the faster it will run. Memory-related issues and the effects of memory hierarchies are pervasive: how memory is managed, from hardware caches to garbage collection, can change runtimes dramatically. Yet users have no direct control over most aspects of memory management. The timing services p rovided by programs and operating systems are woefully inadequate. It is difficult to measure runtimes reliably and repeatably even for smal l, purely computational kernels, and it becomes significantly harder w hen a program does much I/O or graphics. Although each language shines in some situations, there are visible and sometimes surprising defici encies even in what should be mainstream applications. We encountered more than a few bugs, size limitations, maladroit features, and total mysteries. (C) 1998 John Wiley & Sons, Ltd.