Opened 17 years ago

Closed 17 years ago

Last modified 17 years ago

#25 closed task (fixed)

Create a compiler object cache

Reported by: bird Owned by: bird
Priority: minor Milestone: 0.1.3
Component: kBuild Version:
Keywords: Cc:

Description

Integrating the object cache in kBuild will permit us to skip unnecessary linking.

Change History (3)

comment:1 by bird, 17 years ago

Status: newassigned
Summary: integrate or create a compiler object cacheCreate a compiler object cache

Of course it much more fun writing this myself, so in source:trunk/src/kObjCache is the beginnings of something. The current code implements a rather simple cache that only contains a single object and will therefor only speed up incremental builds.

That said, the current code works pretty will with incremental builds. I get a 3x speed up on a touch include/iprt/err.h build (3:45 -> 1:17 mins) on the iMac here (building VirtualBox of course). The bad news is that Visual C++ sucks speed wise when requested to only run the precompiler, so there isn't much time saved here. (gcc/g++ is very fast, and therefore saves a lot of time.)

The next thing that needs doing is tracking extra output files (check that they exists for a start). And add a pass-thru piped mode to try speed up the initial build at bit, current figures are like 10:26 vs 11:42 mins.

comment:2 by bird, 17 years ago

Priority: majorminor
Resolution: fixed
Status: assignedclosed

This seems to work pretty well, except for Visual C++. closing.

comment:3 by bird, 17 years ago

Milestone: 0.1.1 release0.1.3
Note: See TracTickets for help on using tickets.