From 67deff273aff58c7ff91f01e810d158a0bc2e20a Mon Sep 17 00:00:00 2001 From: Misha Chornyi Date: Fri, 14 Feb 2025 08:48:52 -0800 Subject: [PATCH 1/6] Add caching mechanism --- tools/gen_ort_dockerfile.py | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/tools/gen_ort_dockerfile.py b/tools/gen_ort_dockerfile.py index 20725b9..87f7397 100755 --- a/tools/gen_ort_dockerfile.py +++ b/tools/gen_ort_dockerfile.py @@ -132,6 +132,15 @@ def dockerfile_for_linux(output_file): RUN pip3 install patchelf==0.17.2 """ else: + if os.getenv("CCACHE_REMOTE_ONLY") and os.getenv("CCACHE_REMOTE_STORAGE"): + df += """ +ENV CCACHE_REMOTE_ONLY="true" +ENV CCACHE_REMOTE_STORAGE="{}" +ENV CMAKE_CXX_COMPILER_LAUNCHER="ccache" +RUN apt-get update \\ + && apt-get install -y --no-install-recommends ccache && ccache -p +""".format( os.getenv("CCACHE_REMOTE_STORAGE") ) + df += """ RUN apt-get update && apt-get install -y --no-install-recommends \ From bcc3e094220729b49fb980cdb9b5d6ab9e0b2336 Mon Sep 17 00:00:00 2001 From: Misha Chornyi Date: Fri, 14 Feb 2025 11:49:01 -0800 Subject: [PATCH 2/6] Add ccache to CUDA and C --- tools/gen_ort_dockerfile.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/tools/gen_ort_dockerfile.py b/tools/gen_ort_dockerfile.py index 87f7397..18f51ff 100755 --- a/tools/gen_ort_dockerfile.py +++ b/tools/gen_ort_dockerfile.py @@ -137,6 +137,8 @@ def dockerfile_for_linux(output_file): ENV CCACHE_REMOTE_ONLY="true" ENV CCACHE_REMOTE_STORAGE="{}" ENV CMAKE_CXX_COMPILER_LAUNCHER="ccache" +ENV CMAKE_C_COMPILER_LAUNCHER="ccache" +ENV CMAKE_CUDA_COMPILER_LAUNCHER="ccache" RUN apt-get update \\ && apt-get install -y --no-install-recommends ccache && ccache -p """.format( os.getenv("CCACHE_REMOTE_STORAGE") ) From a82fdd42d671c6dda77c9e64debd9b3b3354a60b Mon Sep 17 00:00:00 2001 From: Misha Chornyi Date: Fri, 14 Feb 2025 11:51:22 -0800 Subject: [PATCH 3/6] Enable verbose output for ORT --- tools/gen_ort_dockerfile.py | 1 + 1 file changed, 1 insertion(+) diff --git a/tools/gen_ort_dockerfile.py b/tools/gen_ort_dockerfile.py index 18f51ff..1ce804b 100755 --- a/tools/gen_ort_dockerfile.py +++ b/tools/gen_ort_dockerfile.py @@ -139,6 +139,7 @@ def dockerfile_for_linux(output_file): ENV CMAKE_CXX_COMPILER_LAUNCHER="ccache" ENV CMAKE_C_COMPILER_LAUNCHER="ccache" ENV CMAKE_CUDA_COMPILER_LAUNCHER="ccache" +ENV VERBOSE=1 RUN apt-get update \\ && apt-get install -y --no-install-recommends ccache && ccache -p """.format( os.getenv("CCACHE_REMOTE_STORAGE") ) From dc89474fc721cad34cddbf7d6047f59f1a4cf7e2 Mon Sep 17 00:00:00 2001 From: Misha Chornyi Date: Tue, 18 Feb 2025 15:17:03 -0800 Subject: [PATCH 4/6] Update cache installation --- tools/gen_ort_dockerfile.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/tools/gen_ort_dockerfile.py b/tools/gen_ort_dockerfile.py index 1ce804b..ae07e13 100755 --- a/tools/gen_ort_dockerfile.py +++ b/tools/gen_ort_dockerfile.py @@ -141,7 +141,8 @@ def dockerfile_for_linux(output_file): ENV CMAKE_CUDA_COMPILER_LAUNCHER="ccache" ENV VERBOSE=1 RUN apt-get update \\ - && apt-get install -y --no-install-recommends ccache && ccache -p + && apt-get install -y --no-install-recommends ccache && ccache -p \\ + && rm -rf /var/lib/apt/lists/* """.format( os.getenv("CCACHE_REMOTE_STORAGE") ) df += """ From 7dfcbf734aad92d0864d4b8708cae69905b6490d Mon Sep 17 00:00:00 2001 From: Misha Chornyi Date: Thu, 20 Feb 2025 18:53:25 -0800 Subject: [PATCH 5/6] Update Dockerfile instructions --- tools/gen_ort_dockerfile.py | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/tools/gen_ort_dockerfile.py b/tools/gen_ort_dockerfile.py index ae07e13..1d0dd9b 100755 --- a/tools/gen_ort_dockerfile.py +++ b/tools/gen_ort_dockerfile.py @@ -134,12 +134,13 @@ def dockerfile_for_linux(output_file): else: if os.getenv("CCACHE_REMOTE_ONLY") and os.getenv("CCACHE_REMOTE_STORAGE"): df += """ -ENV CCACHE_REMOTE_ONLY="true" -ENV CCACHE_REMOTE_STORAGE="{}" -ENV CMAKE_CXX_COMPILER_LAUNCHER="ccache" -ENV CMAKE_C_COMPILER_LAUNCHER="ccache" -ENV CMAKE_CUDA_COMPILER_LAUNCHER="ccache" -ENV VERBOSE=1 +ENV CCACHE_REMOTE_ONLY="true" \\ + CCACHE_REMOTE_STORAGE="{}" \\ + CMAKE_CXX_COMPILER_LAUNCHER="ccache" \\ + CMAKE_C_COMPILER_LAUNCHER="ccache" \\ + CMAKE_CUDA_COMPILER_LAUNCHER="ccache" \\ + VERBOSE=1 + RUN apt-get update \\ && apt-get install -y --no-install-recommends ccache && ccache -p \\ && rm -rf /var/lib/apt/lists/* From 6ca70293d7503fc57d378f58be21fb812baf0ec7 Mon Sep 17 00:00:00 2001 From: Misha Chornyi Date: Fri, 28 Feb 2025 15:57:31 -0800 Subject: [PATCH 6/6] Fix pre-commit issue --- tools/gen_ort_dockerfile.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/tools/gen_ort_dockerfile.py b/tools/gen_ort_dockerfile.py index 1d0dd9b..23b60b2 100755 --- a/tools/gen_ort_dockerfile.py +++ b/tools/gen_ort_dockerfile.py @@ -144,7 +144,9 @@ def dockerfile_for_linux(output_file): RUN apt-get update \\ && apt-get install -y --no-install-recommends ccache && ccache -p \\ && rm -rf /var/lib/apt/lists/* -""".format( os.getenv("CCACHE_REMOTE_STORAGE") ) +""".format( + os.getenv("CCACHE_REMOTE_STORAGE") + ) df += """