Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[llvm] [refactor] Split LLVMCompiledData of kernels and tasks #6019

Merged
merged 2 commits into from
Sep 13, 2022

Conversation

lin-hitonami
Copy link
Contributor

@lin-hitonami lin-hitonami commented Sep 8, 2022

Related issue = #5511
The compiler first compiles every offloaded task to a LLVMCompiledTask which contains an LLVM module, the name of the offloaded task function inside the module, and some extra information for linking. Then, The compiler links the modules in the LLVMCompiledTasks, the runtime modules and the struct modules used in the kernel together, and creates a LLVMCompiledKernel that contain the linked LLVM module and the names of the offloaded tasks.

Both LLVMCompiledTask and LLVMCompiledKernel need to store the generated LLVM module and the names of the functions of the offloaded tasks inside the module. LLVMCompiledTask also stores additional information which will be used when linking like which SNodeTrees are used and the sizes of TLS buffers used in parallel struct for.

@netlify
Copy link

netlify bot commented Sep 8, 2022

Deploy Preview for docsite-preview canceled.

Name Link
🔨 Latest commit 04e482f
🔍 Latest deploy log https://app.netlify.com/sites/docsite-preview/deploys/6319c7cde2537b000807b347

Copy link
Contributor

@ailzhang ailzhang left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks!

@lin-hitonami lin-hitonami merged commit eee2e89 into taichi-dev:master Sep 13, 2022
@lin-hitonami lin-hitonami deleted the split_compiled_data branch September 13, 2022 08:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants