numaprof: New package (version : 1.1.4) (#35271)
* numaprof: New package (version : 1.1.4) * numaprof: Improve the deps description by adding 'type' * numaprof: Fix maintainer semantic
This commit is contained in:
parent
6ffc11c46d
commit
7c5e3ddac5
2 changed files with 62 additions and 0 deletions
|
@ -0,0 +1,15 @@
|
||||||
|
diff --git a/src/integration/pintool/Makefile.pin.in b/src/integration/pintool/Makefile.pin.in
|
||||||
|
index ec95b7b..1b84423 100644
|
||||||
|
--- a/src/integration/pintool/Makefile.pin.in
|
||||||
|
+++ b/src/integration/pintool/Makefile.pin.in
|
||||||
|
@@ -4,7 +4,8 @@
|
||||||
|
#
|
||||||
|
##############################################################
|
||||||
|
|
||||||
|
-PIN_ROOT=$(shell dirname @PINTOOL_PIN@)
|
||||||
|
+PIN_ROOT_BIN=$(shell dirname @PINTOOL_PIN@)
|
||||||
|
+PIN_ROOT=$(shell dirname $(PIN_ROOT_BIN))
|
||||||
|
MAKE+=-f Makefile.pin
|
||||||
|
SRCDIR=@CMAKE_CURRENT_SOURCE_DIR@
|
||||||
|
CST_DEBUG_FLAGS=@PINTOOL_CFLAGS@
|
||||||
|
|
47
var/spack/repos/builtin/packages/numaprof/package.py
Normal file
47
var/spack/repos/builtin/packages/numaprof/package.py
Normal file
|
@ -0,0 +1,47 @@
|
||||||
|
# Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
|
||||||
|
# Spack Project Developers. See the top-level COPYRIGHT file for details.
|
||||||
|
#
|
||||||
|
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
|
||||||
|
|
||||||
|
from spack.package import *
|
||||||
|
|
||||||
|
|
||||||
|
class Numaprof(CMakePackage):
|
||||||
|
"""
|
||||||
|
NumaProf is a NUMA memory access profiling tool. It is based on Intel-PIN to intercept
|
||||||
|
all the memory access and report them on NUMA counters so we can tell by annotating the
|
||||||
|
source code where you make local, remote, unpinned memory accessed. It also provide
|
||||||
|
some charts to better understand the NUMA behavior of the application.
|
||||||
|
"""
|
||||||
|
|
||||||
|
# Infos
|
||||||
|
homepage = "https://memtt.github.io/numaprof"
|
||||||
|
url = "https://github.com/memtt/numaprof/releases/download/v1.1.4/numaprof-1.1.4.tar.bz2"
|
||||||
|
maintainers("svalat")
|
||||||
|
|
||||||
|
# Versions
|
||||||
|
version("1.1.4", sha256="96cc5e153895f43d8be58e052433c9e7c9842071cc6bf915b3b1b346908cbbff")
|
||||||
|
|
||||||
|
# Variants
|
||||||
|
variant(
|
||||||
|
"qt", default=False, description="Build the QT embeded webview with Pyton + QT web toolkit"
|
||||||
|
)
|
||||||
|
|
||||||
|
# Dependencies
|
||||||
|
depends_on("python", type=("build", "run"))
|
||||||
|
depends_on("intel-pin", type=("build", "link", "run"))
|
||||||
|
depends_on("numactl")
|
||||||
|
depends_on("py-pyqt5", "+qt", type=("build", "run"))
|
||||||
|
|
||||||
|
# Patches
|
||||||
|
patch(
|
||||||
|
"numaprof-1.1.4-pin-layout.patch",
|
||||||
|
when="@1.1.4:",
|
||||||
|
sha256="a2e3242f72b502285da2ad41dd896382e99a8987bda9ff38e081a048776ee7b3",
|
||||||
|
)
|
||||||
|
|
||||||
|
# Generate build command
|
||||||
|
def cmake_args(self):
|
||||||
|
spec = self.spec
|
||||||
|
args = ["-DPINTOOL_PREFIX=" + spec["intel-pin"].prefix]
|
||||||
|
return args
|
Loading…
Reference in a new issue