daphne-project / daphne-project/daphne

Suggestion to speed up LLVM/MLIR dependency check out

Open Beginner friendly
#474 0 comments 1 reaction 0 assignees View on GitHub
Dominant language
C++
Stars
81
Forks
83
PR merge metrics
No merged PRs in 30d

Description

The initial checkout of the LLVM mono repo submodule takes a long time. In the course of making DAPHNE compilation from released source artifacts possible I found a way to make the compilation process work without the git submodule (by downloading a "snapshot-from-commit-hash"). See the source lines of build.sh around the following link for details:
https://github.com/daphne-eu/daphne/blob/f314fdd34d85df10444d2878d5e2b22cad075349/build.sh#L778

I timed both methods of fetching the LLVM mono repo and the time spent comes down from 5 minutes 7 seconds to about 36 seconds. With this major time saver I suggest to remove the submodule check out from build.sh. People who want to have the checked out submodule can still use pull.sh but most people will not bother anyway and get a quicker initial build process.

Contributor guide

Open the contributing guide

Research direction

Start in build.sh around line 778 and compare its LLVM checkout logic with the snapshot-from-commit-hash approach described in the issue. Read pull.sh to understand the retained submodule path. Done means the initial build can fetch the LLVM snapshot without checking out the submodule, while released source artifacts still compile successfully.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp, git, shell
Domain
build-system, compilers
Issue type
Feature
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Stale
Clarity
Clearly specified
Newbie friendliness
68/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.