2020-07-21 15:26:33 +00:00
|
|
|
# Copyright (c) 2016-2020, Intel Corporation
|
2017-06-09 11:53:30 +00:00
|
|
|
#
|
2016-04-25 16:05:48 +00:00
|
|
|
# Redistribution and use in source and binary forms, with or without
|
|
|
|
# modification, are permitted provided that the following conditions are met:
|
2017-06-09 11:53:30 +00:00
|
|
|
#
|
2016-04-25 16:05:48 +00:00
|
|
|
# * Redistributions of source code must retain the above copyright notice,
|
|
|
|
# this list of conditions and the following disclaimer.
|
|
|
|
# * Redistributions in binary form must reproduce the above copyright
|
|
|
|
# notice, this list of conditions and the following disclaimer in the
|
|
|
|
# documentation and/or other materials provided with the distribution.
|
|
|
|
# * Neither the name of Intel Corporation nor the names of its contributors
|
|
|
|
# may be used to endorse or promote products derived from this software
|
|
|
|
# without specific prior written permission.
|
2017-06-09 11:53:30 +00:00
|
|
|
#
|
2016-04-25 16:05:48 +00:00
|
|
|
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
|
|
|
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
|
|
|
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
|
|
|
# DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
|
|
|
|
# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
|
|
|
# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
|
|
|
# SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
|
|
|
|
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
|
|
|
|
# OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
|
|
|
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
|
|
|
2017-05-22 15:50:54 +00:00
|
|
|
%global githubname intel-cmt-cat
|
2020-12-19 19:31:05 +00:00
|
|
|
%global githubver 4.1.0
|
2017-02-21 15:00:58 +00:00
|
|
|
|
2017-05-22 15:50:54 +00:00
|
|
|
%if %{defined githubsubver}
|
|
|
|
%global githubfull %{githubname}-%{githubver}.%{githubsubver}
|
2017-02-21 15:00:58 +00:00
|
|
|
%else
|
2017-05-22 15:50:54 +00:00
|
|
|
%global githubfull %{githubname}-%{githubver}
|
2017-02-21 15:00:58 +00:00
|
|
|
%endif
|
2017-08-04 16:10:15 +00:00
|
|
|
|
2017-05-22 15:50:54 +00:00
|
|
|
# disable producing debuginfo for this package
|
|
|
|
%global debug_package %{nil}
|
2016-04-25 16:05:48 +00:00
|
|
|
|
2017-02-21 15:00:58 +00:00
|
|
|
|
2017-06-09 11:53:30 +00:00
|
|
|
Summary: Provides command line interface to CMT, MBM, CAT, CDP and MBA technologies
|
2017-05-22 15:50:54 +00:00
|
|
|
Name: %{githubname}
|
2022-01-20 13:20:20 +00:00
|
|
|
Release: 4%{?dist}
|
2017-05-22 15:50:54 +00:00
|
|
|
Version: %{githubver}
|
2016-04-25 16:05:48 +00:00
|
|
|
License: BSD
|
|
|
|
ExclusiveArch: x86_64 i686 i586
|
2017-05-22 15:50:54 +00:00
|
|
|
%if %{defined githubsubver}
|
2018-03-08 15:25:40 +00:00
|
|
|
Source: https://github.com/01org/%{githubname}/archive/v%{githubver}.%{githubsubver}.tar.gz
|
2017-02-21 15:00:58 +00:00
|
|
|
%else
|
2018-03-08 15:25:40 +00:00
|
|
|
Source: https://github.com/01org/%{githubname}/archive/v%{githubver}.tar.gz
|
2017-02-21 15:00:58 +00:00
|
|
|
%endif
|
2016-04-25 16:05:48 +00:00
|
|
|
URL: https://github.com/01org/%{githubname}
|
2018-03-08 15:25:40 +00:00
|
|
|
BuildRequires: gcc, make
|
2016-04-25 16:05:48 +00:00
|
|
|
|
|
|
|
%description
|
|
|
|
This software package provides basic support for
|
|
|
|
Cache Monitoring Technology (CMT), Memory Bandwidth Monitoring (MBM),
|
2017-06-09 11:53:30 +00:00
|
|
|
Cache Allocation Technology (CAT), Memory Bandwidth Allocation (MBA),
|
|
|
|
and Code Data Prioratization (CDP).
|
2016-04-25 16:05:48 +00:00
|
|
|
|
|
|
|
CMT, MBM and CAT are configured using Model Specific Registers (MSRs)
|
|
|
|
to measure last level cache occupancy, set up the class of service masks and
|
|
|
|
manage the association of the cores/logical threads to a class of service.
|
|
|
|
The software executes in user space, and access to the MSRs is
|
|
|
|
obtained through a standard Linux* interface. The virtual file system
|
|
|
|
provides an interface to read and write the MSR registers but
|
|
|
|
it requires root privileges.
|
|
|
|
|
2017-05-22 15:50:54 +00:00
|
|
|
%package -n intel-cmt-cat-devel
|
2017-06-09 11:53:30 +00:00
|
|
|
Summary: Library and sample code to use CMT, MBM, CAT, CDP and MBA technologies
|
2017-05-22 15:50:54 +00:00
|
|
|
License: BSD
|
|
|
|
Requires: intel-cmt-cat == %{version}
|
|
|
|
ExclusiveArch: x86_64 i686 i586
|
|
|
|
|
|
|
|
%description -n intel-cmt-cat-devel
|
|
|
|
This software package provides basic support for
|
2017-06-09 11:53:30 +00:00
|
|
|
Cache Monitoring Technology (CMT), Memory Bandwidth Monitoring (MBM),
|
|
|
|
Cache Allocation Technology (CAT), Memory Bandwidth Allocation (MBA),
|
|
|
|
and Code Data Prioratization (CDP).
|
2017-05-22 15:50:54 +00:00
|
|
|
The package includes library, header file and sample code.
|
2017-02-21 15:00:58 +00:00
|
|
|
|
2017-05-22 15:50:54 +00:00
|
|
|
For additional information please refer to:
|
|
|
|
https://github.com/01org/%{githubname}
|
|
|
|
|
|
|
|
%prep
|
2016-04-25 16:05:48 +00:00
|
|
|
%autosetup -n %{githubfull}
|
|
|
|
|
2019-01-22 17:39:20 +00:00
|
|
|
%ldconfig_scriptlets
|
2017-06-23 14:55:03 +00:00
|
|
|
|
2016-04-25 16:05:48 +00:00
|
|
|
%build
|
|
|
|
make %{?_smp_mflags}
|
|
|
|
|
|
|
|
%install
|
|
|
|
# Not doing make install as it strips the symbols.
|
|
|
|
# Using files from the build directory.
|
2017-02-21 15:00:58 +00:00
|
|
|
install -d %{buildroot}/%{_bindir}
|
2017-06-23 14:55:03 +00:00
|
|
|
install -s %{_builddir}/%{githubfull}/pqos/pqos %{buildroot}/%{_bindir}
|
2017-05-22 15:50:54 +00:00
|
|
|
install %{_builddir}/%{githubfull}/pqos/pqos-os %{buildroot}/%{_bindir}
|
|
|
|
install %{_builddir}/%{githubfull}/pqos/pqos-msr %{buildroot}/%{_bindir}
|
2017-06-23 14:55:03 +00:00
|
|
|
sed -i "1s/.*/\#!\/usr\/bin\/bash/" %{buildroot}/%{_bindir}/pqos-*
|
2017-02-21 15:00:58 +00:00
|
|
|
|
|
|
|
install -d %{buildroot}/%{_mandir}/man8
|
|
|
|
install -m 0644 %{_builddir}/%{githubfull}/pqos/pqos.8 %{buildroot}/%{_mandir}/man8
|
2017-06-23 14:55:03 +00:00
|
|
|
ln -sf %{_mandir}/man8/pqos.8 %{buildroot}/%{_mandir}/man8/pqos-os.8
|
|
|
|
ln -sf %{_mandir}/man8/pqos.8 %{buildroot}/%{_mandir}/man8/pqos-msr.8
|
2017-02-21 15:00:58 +00:00
|
|
|
|
|
|
|
install -d %{buildroot}/%{_bindir}
|
2017-06-23 14:55:03 +00:00
|
|
|
install -s %{_builddir}/%{githubfull}/rdtset/rdtset %{buildroot}/%{_bindir}
|
2017-02-21 15:00:58 +00:00
|
|
|
|
|
|
|
install -d %{buildroot}/%{_mandir}/man8
|
|
|
|
install -m 0644 %{_builddir}/%{githubfull}/rdtset/rdtset.8 %{buildroot}/%{_mandir}/man8
|
|
|
|
|
|
|
|
install -d %{buildroot}/%{_licensedir}/%{name}-%{version}
|
|
|
|
install -m 0644 %{_builddir}/%{githubfull}/LICENSE %{buildroot}/%{_licensedir}/%{name}-%{version}
|
|
|
|
|
2017-05-22 15:50:54 +00:00
|
|
|
# Install the library
|
2017-02-21 15:00:58 +00:00
|
|
|
install -d %{buildroot}/%{_libdir}
|
2017-08-04 16:10:15 +00:00
|
|
|
install -s %{_builddir}/%{githubfull}/lib/libpqos.so.* %{buildroot}/%{_libdir}
|
2017-05-22 15:50:54 +00:00
|
|
|
cp -a %{_builddir}/%{githubfull}/lib/libpqos.so %{buildroot}/%{_libdir}
|
2020-07-21 15:26:33 +00:00
|
|
|
cp -a %{_builddir}/%{githubfull}/lib/libpqos.so.4 %{buildroot}/%{_libdir}
|
2017-02-21 15:00:58 +00:00
|
|
|
|
2017-05-22 15:50:54 +00:00
|
|
|
# Install the header file
|
|
|
|
install -d %{buildroot}/%{_includedir}
|
|
|
|
install -m 0644 %{_builddir}/%{githubfull}/lib/pqos.h %{buildroot}/%{_includedir}
|
2016-04-25 16:05:48 +00:00
|
|
|
|
2017-05-22 15:50:54 +00:00
|
|
|
# Install license and sample code
|
|
|
|
install -d %{buildroot}/%{_usrsrc}/%{githubfull}
|
|
|
|
install -m 0644 %{_builddir}/%{githubfull}/LICENSE %{buildroot}/%{_usrsrc}/%{githubfull}
|
2016-04-25 16:05:48 +00:00
|
|
|
|
2017-05-22 15:50:54 +00:00
|
|
|
install -d %{buildroot}/%{_usrsrc}/%{githubfull}/c
|
|
|
|
|
2018-10-16 12:56:59 +00:00
|
|
|
install -d %{buildroot}/%{_usrsrc}/%{githubfull}/c/CAT_MBA
|
|
|
|
install -m 0644 %{_builddir}/%{githubfull}/examples/c/CAT_MBA/Makefile %{buildroot}/%{_usrsrc}/%{githubfull}/c/CAT_MBA
|
|
|
|
install -m 0644 %{_builddir}/%{githubfull}/examples/c/CAT_MBA/reset_app.c %{buildroot}/%{_usrsrc}/%{githubfull}/c/CAT_MBA
|
|
|
|
install -m 0644 %{_builddir}/%{githubfull}/examples/c/CAT_MBA/allocation_app_l2cat.c %{buildroot}/%{_usrsrc}/%{githubfull}/c/CAT_MBA
|
|
|
|
install -m 0644 %{_builddir}/%{githubfull}/examples/c/CAT_MBA/allocation_app_l3cat.c %{buildroot}/%{_usrsrc}/%{githubfull}/c/CAT_MBA
|
|
|
|
install -m 0644 %{_builddir}/%{githubfull}/examples/c/CAT_MBA/allocation_app_mba.c %{buildroot}/%{_usrsrc}/%{githubfull}/c/CAT_MBA
|
|
|
|
install -m 0644 %{_builddir}/%{githubfull}/examples/c/CAT_MBA/association_app.c %{buildroot}/%{_usrsrc}/%{githubfull}/c/CAT_MBA
|
2017-05-22 15:50:54 +00:00
|
|
|
|
|
|
|
install -d %{buildroot}/%{_usrsrc}/%{githubfull}/c/CMT_MBM
|
|
|
|
install -m 0644 %{_builddir}/%{githubfull}/examples/c/CMT_MBM/Makefile %{buildroot}/%{_usrsrc}/%{githubfull}/c/CMT_MBM
|
|
|
|
install -m 0644 %{_builddir}/%{githubfull}/examples/c/CMT_MBM/monitor_app.c %{buildroot}/%{_usrsrc}/%{githubfull}/c/CMT_MBM
|
2016-04-25 16:05:48 +00:00
|
|
|
|
|
|
|
%files
|
|
|
|
%{_bindir}/pqos
|
2017-05-22 15:50:54 +00:00
|
|
|
%{_bindir}/pqos-os
|
|
|
|
%{_bindir}/pqos-msr
|
2016-04-25 16:05:48 +00:00
|
|
|
%{_mandir}/man8/pqos.8.gz
|
2017-06-23 14:55:03 +00:00
|
|
|
%{_mandir}/man8/pqos-os.8.gz
|
|
|
|
%{_mandir}/man8/pqos-msr.8.gz
|
2017-02-21 15:00:58 +00:00
|
|
|
%{_bindir}/rdtset
|
|
|
|
%{_mandir}/man8/rdtset.8.gz
|
2017-08-04 16:10:15 +00:00
|
|
|
%{_libdir}/libpqos.so.*
|
2017-02-21 15:00:58 +00:00
|
|
|
|
2016-04-25 16:05:48 +00:00
|
|
|
%{!?_licensedir:%global license %%doc}
|
|
|
|
%license %{_licensedir}/%{name}-%{version}/LICENSE
|
2017-02-21 15:00:58 +00:00
|
|
|
%doc ChangeLog README
|
2016-04-25 16:05:48 +00:00
|
|
|
|
2017-05-22 15:50:54 +00:00
|
|
|
%files -n intel-cmt-cat-devel
|
|
|
|
%{_libdir}/libpqos.so
|
2020-07-21 15:26:33 +00:00
|
|
|
%{_libdir}/libpqos.so.4
|
2017-05-22 15:50:54 +00:00
|
|
|
%{_includedir}/pqos.h
|
2018-10-16 12:56:59 +00:00
|
|
|
%{_usrsrc}/%{githubfull}/c/CAT_MBA/Makefile
|
|
|
|
%{_usrsrc}/%{githubfull}/c/CAT_MBA/reset_app.c
|
|
|
|
%{_usrsrc}/%{githubfull}/c/CAT_MBA/association_app.c
|
|
|
|
%{_usrsrc}/%{githubfull}/c/CAT_MBA/allocation_app_l2cat.c
|
|
|
|
%{_usrsrc}/%{githubfull}/c/CAT_MBA/allocation_app_l3cat.c
|
|
|
|
%{_usrsrc}/%{githubfull}/c/CAT_MBA/allocation_app_mba.c
|
2017-05-22 15:50:54 +00:00
|
|
|
%{_usrsrc}/%{githubfull}/c/CMT_MBM/Makefile
|
|
|
|
%{_usrsrc}/%{githubfull}/c/CMT_MBM/monitor_app.c
|
|
|
|
%doc %{_usrsrc}/%{githubfull}/LICENSE
|
|
|
|
|
2016-04-25 16:05:48 +00:00
|
|
|
%changelog
|
2022-01-20 13:20:20 +00:00
|
|
|
* Thu Jan 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 4.1.0-4
|
|
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
|
|
|
|
|
2021-07-22 08:37:14 +00:00
|
|
|
* Thu Jul 22 2021 Fedora Release Engineering <releng@fedoraproject.org> - 4.1.0-3
|
|
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
|
|
|
|
|
2021-01-26 14:23:32 +00:00
|
|
|
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 4.1.0-2
|
|
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
|
|
|
|
|
2020-12-19 19:31:05 +00:00
|
|
|
* Fri Dec 18 2020 Khawar Abbasi <khawar.abbasi@intel.com> - 4.1.0-1
|
|
|
|
- New release 4.1.0
|
|
|
|
|
2020-07-28 01:50:58 +00:00
|
|
|
* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 4.0.0-2
|
|
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
|
|
|
|
|
2020-07-21 15:26:33 +00:00
|
|
|
* Tue Jul 21 2020 Khawar Abbasi <khawar.abbasi@intel.com> - 4.0.0-1
|
|
|
|
- New release 4.0.0
|
|
|
|
|
2020-01-29 05:30:46 +00:00
|
|
|
* Wed Jan 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 3.1.1-2
|
|
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
|
|
|
|
|
2019-09-30 08:33:30 +00:00
|
|
|
* Mon Sep 30 2019 Marcel cornu <marcel.d.cornu@intel.com> - 3.1.1-1
|
|
|
|
- New release 3.1.1
|
|
|
|
|
2019-07-25 09:34:54 +00:00
|
|
|
* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 3.0.1-2
|
|
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
|
|
|
|
|
2019-03-27 21:32:41 +00:00
|
|
|
* Wed Mar 27 2019 Marcel cornu <marcel.d.cornu@intel.com> - 3.0.1-1
|
|
|
|
- New release 3.0.1
|
|
|
|
|
2019-02-18 13:35:34 +00:00
|
|
|
* Mon Feb 18 2019 Marcel cornu <marcel.d.cornu@intel.com> - 3.0.0-1
|
|
|
|
- New release 3.0.0
|
|
|
|
|
2019-02-01 03:25:18 +00:00
|
|
|
* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2.1.0-2
|
|
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
|
|
|
|
|
2018-10-16 12:56:59 +00:00
|
|
|
* Tue Oct 16 2018 Marcel cornu <marcel.d.cornu@intel.com>, Michal Aleksinski <michalx.aleksinski@intel.com> 2.1.0-1
|
|
|
|
- New release 2.1.0
|
|
|
|
|
2018-07-13 05:45:29 +00:00
|
|
|
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2.0.0-2
|
|
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
|
|
|
|
|
2018-06-28 12:38:41 +00:00
|
|
|
* Thu Jun 28 2018 Marcel cornu <marcel.d.cornu@intel.com>, Michal Aleksinski <michalx.aleksinski@intel.com> - 2.0.0-1
|
|
|
|
- New release 2.0.0
|
|
|
|
|
2018-03-08 15:25:40 +00:00
|
|
|
* Thu Mar 08 2018 Marcel cornu <marcel.d.cornu@intel.com>, Michal Aleksinski <michalx.aleksinski@intel.com> - 1.2.0-3
|
|
|
|
- Updated spec file with BuildRequires tag
|
|
|
|
|
2018-02-07 17:31:43 +00:00
|
|
|
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.2.0-2
|
|
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
|
|
|
|
|
2017-12-12 14:57:19 +00:00
|
|
|
* Wed Nov 29 2017 Marcel Cornu <marcel.d.cornu@intel.com>, Wojciech Andralojc <wojciechx.andralojc@intel.com> 1.2.0-1
|
|
|
|
- New release 1.2.0
|
|
|
|
|
2017-08-04 16:10:15 +00:00
|
|
|
* Thu Aug 3 2017 Aaron Hetherington <aaron.hetherington@intel.com>, Marcel Cornu <marcel.d.cornu@intel.com> 1.1.0-1
|
|
|
|
- New release 1.1.0
|
|
|
|
|
2017-08-02 23:48:46 +00:00
|
|
|
* Wed Aug 02 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.0.1-3
|
|
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
|
|
|
|
|
2017-07-26 13:36:00 +00:00
|
|
|
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.0.1-2
|
|
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
|
|
|
|
|
2017-06-23 14:55:03 +00:00
|
|
|
* Wed Jun 21 2017 Aaron Hetherington <aaron.hetherington@intel.com>, Marcel Cornu <marcel.d.cornu@intel.com> 1.0.1-1
|
|
|
|
- Spec file bug fixes
|
|
|
|
|
2017-06-09 11:53:30 +00:00
|
|
|
* Wed Jun 07 2017 Aaron Hetherington <aaron.hetherington@intel.com>, Marcel Cornu <marcel.d.cornu@intel.com> 1.0.1-1
|
|
|
|
- new release
|
|
|
|
- bug fixes
|
|
|
|
|
2017-05-22 15:50:54 +00:00
|
|
|
* Fri May 19 2017 Aaron Hetherington <aaron.hetherington@intel.com>, Michal Aleksinski <michalx.aleksinski@intel.com> 1.0.0-1
|
|
|
|
- new release
|
|
|
|
|
2017-02-21 15:00:58 +00:00
|
|
|
* Tue Feb 14 2017 Aaron Hetherington <aaron.hetherington@intel.com> 0.1.5-1
|
|
|
|
- new release
|
|
|
|
|
|
|
|
* Mon Oct 17 2016 Aaron Hetherington <aaron.hetherington@intel.com> 0.1.5
|
|
|
|
- new release
|
2017-02-10 16:28:09 +00:00
|
|
|
|
2016-04-25 16:05:48 +00:00
|
|
|
* Tue Apr 19 2016 Tomasz Kantecki <tomasz.kantecki@intel.com> 0.1.4-3
|
|
|
|
- global typo fix
|
|
|
|
- small edits in the description
|
|
|
|
|
|
|
|
* Mon Apr 18 2016 Tomasz Kantecki <tomasz.kantecki@intel.com> 0.1.4-2
|
|
|
|
- LICENSE file added to the package
|
|
|
|
|
|
|
|
* Thu Apr 7 2016 Tomasz Kantecki <tomasz.kantecki@intel.com> 0.1.4-1
|
|
|
|
- initial version of the package
|