ACM Home Page
Please provide us with feedback. Feedback
Digital Library logoTake a look at the new version of this page: [ beta version ]. Tell us what you think.
The cost of selective recompilation and environment processing
Full text PdfPdf (1.78 MB)
Source ACM Transactions on Software Engineering and Methodology (TOSEM) archive
Volume 3 ,  Issue 1  (January 1994) table of contents
Pages: 3 - 28  
Year of Publication: 1994
ISSN:1049-331X
Authors
Rolf Adams  Univ. of Karlsruhe, Karlsruhe, Germany
Walter Tichy  Univ. of Karlsruhe, Karlsruhe, Germany
Annette Weinert  Univ. of Karlsruhe, Karlsruhe, Germany
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 5,   Downloads (12 Months): 29,   Citation Count: 14
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/174634.174637
What is a DOI?

ABSTRACT

When a single software module in a large system is modified, a potentially large number of other modules may have to be recompiled. By reducing both the number of compilations and the amount of input processed by each compilation run, the turnaround time after changes can be reduced significantly. Potential time savings are measured in a medium-sized, industrial software project over a three-year period. The results indicate that a large number of compilations caused by traditional compilation unit dependencies may be redundant. On the available data, a mechanism that compares compiler output saves about 25 percent, smart recompilation saves 50 percent, and smartest recompilation may save up to 80 percent of compilation work. Furthermore, all compilation methods other than smartest recompilation process large amounts of unused environment data. In the project analyzed, the average environment symbols are actually used. Reading only the actually used symbols would reduce total compiler input by about 50 percent. Combining smart recompilation with a reduction in environment processing might double to triple perceived compilation speed and double linker speed, without sacrificing static type safety.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
 
2
BOO,SON, E. 1989. Program changes and the cost of selective recompilation. Ph.D. thesis, Lept. of Computer Science, Carnegie-Mellon Univ., Pittsburgh, Pa., July.
3
 
4
 
5
CCITT 1988. CCITT high level language (CHILL) language definition, 1988. CCITT Recomm. Z.200, ITU, Geneva, Switzerland.
 
6
CONRADI, R., AND W~VIK, D. H., 1985. Mechanisms and tools for separate compilation. Tech. Rep. 25/85, The Norwegian Institute of Technology, Univ. of Trondheim, Trondheim, Norway.
 
7
DAUSMANN, M. 1985. Informationsstrukturen und Verfahren ffdr die getrennte Ubersetzung von Programmteilen. GMD-Bericht 155, R. Oldenburg Verlag, Munich, Germany.
8
 
9
FEILER, P. H., DART, S. A., AND DOWNEY, G. 1988. Evaluation of the Rational environment. Tech. Rep. CMU/SEI-88-TR-15, Software Engineering Institute, Carnegie-Mellon Univ., Pittsburgh, Pa.
 
10
FELDIVL~N, S. I. 1979. Make--A program for maintaining computer programs. Softw. Pract. Exper. 9, 3 (Mar.), 255 265.
 
11
 
12
GUTKNECHT, J. 1986. Separate compilation in Modu{a-2: An approach to efficient symbol files. IEEE Softw. 3, 6 (Nov.), 29 38.
 
13
KAMEL, R. F. 1987. Effect of modularity on system evolution. IEEE Softw. 4, i (Jan.), 48-54.
 
14
LEBLANG, D. B., AND CHASE, R. P., JR. 1987. Parallel software configuration management in a network environment. IEEE Softw. 4~ 6 (Nov.), 28-35.
 
15
16
 
17
 
18
MITCHELL, J. G., MAYBURY, W. AND SWEET, R. 1978. Mesa language manual. Tech. Rep., Xerox Palo Alto Research Center, Palo Alto, Calif., Feb.
 
19
 
20
RAIN, M. 1984. Avoiding trickle-down recompilation in the Mary2 implementation. Softw Pract. Exper. 14, 12 (Dec.), 1149-1157.
21
22
23
24
 
25
 
26
27
 
28
U.S. DEPARTMENT OF DEFENSE. 1983 Reference manual for the Ada programming language. ANSI/MIL-STD 1815 A-1983, 2, U.S. Dept. of Defense, Washington, D C.
 
29
Vo, K.-P., AND CHEN, Y.-F. 1992. Inch A tool to analyze include files. In Summer 1992 USENIX Conference (San Antonio, Tex., June), pp. 199-208.
 
30
WroTH, N. 1985. Programmtng in Modula-2. Springer-Verlag, New York.
 
31
WIRTH, N, GEISSMANN, L., HOPPE, J., JACOBI, C., KNUDSEN, S. E., AND WINIGER, W. 1982. Lilith handbook: A grade for Lilith users and programmers Tech. Rep, Institut fir Informatik der ETH Ziirich, Switzerland.

CITED BY  14

Collaborative Colleagues:
Rolf Adams: colleagues
Walter Tichy: colleagues
Annette Weinert: colleagues