We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
Hi,
is there an energy agent version for the ARM aarch64 architecture? This site
https://developer.arm.com/products/software-development-tools/hpc/documentation/ipmi-energy-agent
only provides RPMs for the x86_64 architecture.
thanks
Hi there,
Thanks for bringing this to our attention. Unfortunately, the IPMI Energy Agent is currently only available on x86_64. This is something we are looking into and that we will add to both Arm Forge Professional and Arm Performance Reports in the coming months.
Best regards,
Patrick
I figured out how to install the agent
# systemctl status ipmi-energy-agent.service ● ipmi-energy-agent.service - Arm IPMI Energy Agent Loaded: loaded (/usr/lib/systemd/system/ipmi-energy-agent.service; disabled; vendor preset: disabled) Active: active (running) since Wed 2019-02-13 15:26:36 CST; 19h ago Docs: http://www.allinea.com/user-guide/forge/userguide.html Process: 38073 ExecStartPre=/bin/mkdir -m 0755 -p /var/spool/ipmi-energy-agent (code=exited, status=0/SUCCESS) Main PID: 38076 (ipmi-energy-age) CGroup: /system.slice/ipmi-energy-agent.service └─38076 /usr/sbin/ipmi-energy-agent smi 0 NodeDCpow... Feb 13 15:26:36 cn4002 systemd[1]: Starting Arm IPMI Energy Ag... Feb 13 15:26:36 cn4002 systemd[1]: Started Arm IPMI Energy Agent. Hint: Some lines were ellipsized, use -l to show in full.
I'm using Centos7 on aarch64. I installed the following rpm packages:
OpenIPMI-modalias-2.0.23-2.el7.aarch64 OpenIPMI-2.0.23-2.el7.aarch64 OpenIPMI-devel-2.0.23-2.el7.aarch64 ipmitool-1.8.18-7.el7.aarch64 OpenIPMI-libs-2.0.23-2.el7.aarch64
ncurses-devel ncurses ncurses-lib
Then I updated the makefile to point to the location of the libraries and header files
srcdir?=$(dir $(abspath $(lastword $(MAKEFILE_LIST)))) exec_prefix?=$(prefix) sbindir?=$(exec_prefix)/sbin sysconfdir?=$(prefix)/etc libdir?=$(prefix)/lib TARGET=ipmi-energy-agent VERSION=$(shell grep IPMI_ENERGY_AGENT_VERSION src/version.h | sed 's/[^"]*"\([0-9]*\.[0-9]*\).*/\1/') TARBALL=$(TARGET)-$(VERSION).tar.bz2 DEPS_ROOT=$(srcdir)/deps OPENIPMI_VERSION=2.0.21 OPENIPMI_PACKAGE=OpenIPMI-$(OPENIPMI_VERSION) OPENIPMI_ROOT=$(DEPS_ROOT)/$(OPENIPMI_PACKAGE) OPENIPMI_LIBDIR=$(OPENIPMI_ROOT)/lib/.libs OPENIPMI_UTILS_LIBDIR=$(OPENIPMI_ROOT)/utils/.libs OPENIPMI_UNIX_LIBDIR=$(OPENIPMI_ROOT)/unix/.libs OPENIPMI_TARGET=$(OPENIPMI_LIBDIR)/libOpenIPMI.a POPT_VERSION=1.16 POPT_PACKAGE=popt-$(POPT_VERSION) POPT_ROOT=$(DEPS_ROOT)/$(POPT_PACKAGE) POPT_LIBDIR=$(POPT_ROOT)/.libs POPT_TARGET=$(POPT_LIBDIR)/libpopt.a ALLINEA_FORGE_PATH?=/opt/arm/forge CFLAGS ?= -g -O2 SOURCES=counters.c ipmi.c main.c simulate.c HEADERS=counters.h ipmi.h main.h options.h simulate.h TESTS=map-test VPATH=src test all: $(TARGET) $(TARGET): $(SOURCES) $(HEADERS) $(CC) $(filter %.c,$^) $(CFLAGS) -o $(TARGET) -lrt -I/usr/include/OpenIPMI -L/usr/lib64/ -lOpenIPMI -lOpenIPMIutils -L/usr/lib64/pkgconfig -lOpenIPMIposix -lm $(filter-out map-test,$(TESTS)): %: %.c $(CC) $< $(CFLAGS) -o $@ map-test: map-test.c map-metric-plugin-api.c $(ALLINEA_FORGE_PATH)/map/metrics/lib-system-energy.so $(ALLINEA_FORGE_PATH)/lib/64/libmap-sampler.so $(CC) $^ $(CFLAGS) -o $@ -I$(ALLINEA_FORGE_PATH)/map/metrics/include -L$(ALLINEA_FORGE_PATH)/map/metrics -l-system-energy -Wl,-rpath -Wl,$(ALLINEA_FORGE_PATH)/map/metrics -Wl,-rpath -Wl,$(ALLINEA_FORGE_PATH)/lib/64 -lrt .PHONY: install uninstall clean tar rpm deb test install: install -d $(DESTDIR)$(sbindir)/ install $(TARGET) $(DESTDIR)$(sbindir)/ install -d $(DESTDIR)$(libdir)/systemd/system/ install -m 0644 lib/systemd/system/ipmi-energy-agent.service $(DESTDIR)$(libdir)/systemd/system/ install -d $(DESTDIR)$(sysconfdir)/init.d/ install -m 0644 etc/init.d/ipmi-energy-agent $(DESTDIR)$(sysconfdir)/init.d/ install -d $(DESTDIR)$(sysconfdir)/default/ install -m 0644 etc/default/ipmi-energy-agent $(DESTDIR)$(sysconfdir)/default/ uninstall: rm -f $(DESTDIR)$(sbindir)/$(TARGET) rm -f $(DESTDIR)$(libdir)/systemd/system/ipmi-energy-agent.service rm -f $(DESTDIR)$(etcdir)/init.d/ipmi-energy-agent clean: rm -f $(TARGET) $(TESTS) rm -rf $(OPENIPMI_ROOT) $(POPT_ROOT) rm -rf debian/ipmi-energy-agent tar: clean cd .. && tar -cjf $(TARBALL) ipmi-energy-agent rpm: tar topdir=$$(mktemp -d); \ mkdir $$topdir/{BUILD,RPMS,SOURCES,SPECS,SRPMS,BUILDROOT}; \ rpmbuild -ta --define="_topdir $$topdir" --define="_rpmdir .." --buildroot="$$topdir/BUILDROOT" ../$(TARBALL); \ ret=$$? \ rm -rf $$topdir \ exit $$ret deb: clean debuild -i -us -uc -b test: $(TARGET) $(TESTS) for test in $(filter-out map-test,$(TESTS)); do ./$$test; done PL_FOLDER=$$(mktemp -d); PL_FOLDER="$$PL_FOLDER" ./map-test; ret=$$?; rm -r "$$PL_FOLDER"; exit $$ret
Now i need to figure out how to use the arm tools to figure out usage based on these parameters. Suggestions? thanks
# ipmitool sdr | grep 'Watts' InputACpower | 560 Watts | ok TotalDCpower | 528 Watts | ok NodeDCpower | 224 Watts | ok #
Ha! Now that is actually quite awesome! :)
If you have that demon up and running, please install MAP (linux user-space profiling tool for C/C++, Fortran and Python), a component of Forge. The IPMI energy agent was designed to feed MAP with node-level energy data, and based on what I read here, I expect this to run out of the box now.
Go to this page: https://developer.arm.com/products/software-development-tools/hpc/downloads/download-arm-forge
You will find there the form to request a trial licence and the links to download the product.
If you need technical assistance, do feel free to reach out here. I will do what I can to help, otherwise please contact support-hpc-sw@arm.com directly.
We have a license. When I look at the different options, I don't see a power option for the CPU. I just see a power option for a NVIDIA GPU. Do you have any suggestions? thanks
I see. This restriction comes from the licence type you currently own. I think we should follow-up in private as this is a commercial matter rather than technical. Please send me an email at patrick.wohlschlegel@arm.com.
I have a trial license and as expected, it did not work. Node power was not an option.
Section 24.13 Custom metrics from the Forge user guide mentions the following document: allinea metric plugin interface. I did a quick search on the arm website and i did not find any documents or mention of it. could you point me to it?
thanks.
I am sorry it didn't work. It was worth a shot. You will find the documentation in the installation directory of Forge, in /path/to/forge/map/metrics/doc/allinea-metric-plugin-interface.
I hope this helps!
Section 24.13 Custom metrics from the Forge user guide mentions the following document: allinea metric plugin interface. I did a quick search on the arm website and i did not find any documents or mention https://filezilla.software/ https://www.ucbrowser.pro/ https://downloader.vip/rufus/of it. could you point me to it?
the information is part of the forge installation. check this directory in your linux installation
/opt/arm/forge/map/metrics/doc/allinea-metric-plugin-interface