Skip to content

build: adding compression in dpc part of the code#3664

Draft
Alexandr-Solovev wants to merge 1 commit into
uxlfoundation:mainfrom
Alexandr-Solovev:dev/asolovev_build_compress
Draft

build: adding compression in dpc part of the code#3664
Alexandr-Solovev wants to merge 1 commit into
uxlfoundation:mainfrom
Alexandr-Solovev:dev/asolovev_build_compress

Conversation

@Alexandr-Solovev

Copy link
Copy Markdown
Contributor

Description


Checklist:

Completeness and readability

  • I have commented my code, particularly in hard-to-understand areas.
  • I have updated the documentation to reflect the changes or created a separate PR with updates and provided its number in the description, if necessary.
  • Git commit message contains an appropriate signed-off-by string (see CONTRIBUTING.md for details).
  • I have resolved any merge conflicts that might occur with the base branch.

Testing

  • I have run it locally and tested the changes extensively.
  • All CI jobs are green or I have provided justification why they aren't.
  • I have extended testing suite if new functionality was introduced in this PR.

Performance

  • I have measured performance for affected algorithms using scikit-learn_bench and provided at least a summary table with measured data, if performance change is expected.
  • I have provided justification why performance and/or quality metrics have changed or why changes are not expected.
  • I have extended the benchmarking suite and provided a corresponding scikit-learn_bench PR if new measurable functionality was introduced in this PR.

Comment thread makefile
-shared-libsan, otherwise they will crash at startup with
"ASan runtime does not come first in initial library list".
Workaround for stubborn link orders:
LD_PRELOAD=$(icpx -print-file-name=libclang_rt.asan-x86_64.so) ./bin

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

@Alexandr-Solovev Did you manage to run DPC examples like this?

-DEBC.icx = $(if $(OS_is_win),-debug:all -Z7,-g) -fno-system-debug -Wno-pass-failed
# ABI-safe debug-size reductions on Linux: zstd-compress .debug_* sections and dedup
# DWARF type DIEs across TUs. Both are transparent to gdb/lldb and don't change emitted code.
-DEBC.icx = $(if $(OS_is_win),-debug:all -Z7,-g -gz=zstd -fdebug-types-section) -fno-system-debug -Wno-pass-failed

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Why -Wno-pass-failed? That shouldn't have any impact in the generated file when the compilation succeeds.

# ABI-safe debug-size reductions for the host side of DPC++: zstd-compress .debug_*
# sections and dedup DWARF type DIEs. Device-side debug info is controlled separately
# via --offload-compress / --offload-compression-level on the link line.
-DEBC.dpcpp = $(if $(OS_is_win),-debug:all -Z7,-g -gz=zstd -fdebug-types-section) -fno-system-debug

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Does this come up with extra requirements to compile like 7zip or libzstd? Or are those bundled in the compiler?

@david-cortes-intel

Copy link
Copy Markdown
Contributor

@Alexandr-Solovev Is it expectable that this would make the linker step slower? How long does it take to build a sanitized DPC build under this PR?

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