Opened 12 years ago

Closed 11 years ago

Last modified 11 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 Changed 12 years ago by bird

  • Status changed from new to assigned
  • Summary changed from integrate or create a compiler object cache to Create 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 Changed 11 years ago by bird

  • Priority changed from major to minor
  • Resolution set to fixed
  • Status changed from assigned to closed

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

comment:3 Changed 11 years ago by bird

  • Milestone changed from 0.1.1 release to 0.1.3
Note: See TracTickets for help on using tickets.