[needs-packaging] rocwmma - in ubuntu

Bug #2141514 reported by Talha Can Havadar
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Ubuntu
In Progress
Wishlist
Talha Can Havadar

Bug Description

Aiming to package v7.1.0 of the upstream to have better compatibility with the ROCm stack (v7.1.0) in ubuntu resolute. From 7.2.0 onwards upstream moved to https://github.com/ROCm/rocm-libraries so thats why you see deprecation warning in the upstream repo but that is the source for v7.1.0

The rocWMMA is a C++ library for accelerating mixed-precision matrix multiply-accumulate (MMA) operations leveraging AMD GPU hardware. rocWMMA makes it easier to break down MMA problems into fragments and distribute block-wise MMA operations in parallel across GPU wavefronts. The API consists of a header library, that can be used to compile MMA acceleration directly into GPU kernel device code. This can benefit from compiler optimization in the generation of kernel assembly, and doesn't incur additional overhead costs of linking to external runtime libraries or having to launch separate kernels.

rocWMMA includes sample projects to validate and demonstrate API usage. These include simple GEMMs, performant GEMMs, DLRM, GEMV and hipRTC integration.

[needs-packaging]:
Upstream: https://github.com/ROCm/rocWMMA
URL: https://code.launchpad.net/~bullwinkle-team/ubuntu/+source/rocwmma/+git/rocwmma/+ref/bullwinkle/llvm-21/ubuntu/devel
License: https://git.launchpad.net/~bullwinkle-team/ubuntu/+source/rocwmma/tree/debian/copyright?h=bullwinkle/llvm-21/ubuntu/devel
PPAs:
  rocm-devel-21: https://launchpad.net/~bullwinkle-team/+archive/ubuntu/rocm-devel-21
  just-for-this-bug: https://launchpad.net/~tchavadar/+archive/ubuntu/lp2141514
    - all archs and -proposed enabled
autopkgtest: https://autopkgtest.ubuntu.com/user/tchavadar/ppa/lp2141514

description: updated
Changed in ubuntu:
status: New → In Progress
assignee: nobody → Talha Can Havadar (tchavadar)
tags: added: needs-packaging
Revision history for this message
Brian Murray (brian-murray) wrote :

*** This is an automated message ***

This bug is tagged needs-packaging which identifies it as a request for a new package in Ubuntu. As a part of the managing needs-packaging bug reports specification, https://wiki.ubuntu.com/QATeam/Specs/NeedsPackagingBugs, all needs-packaging bug reports have Wishlist importance. Subsequently, I'm setting this bug's status to Wishlist.

Changed in ubuntu:
importance: Undecided → Wishlist
Revision history for this message
Frank Heimes (fheimes) wrote :
Download full text (3.9 KiB)

I had a look at the rocwmma package (taken from this ppa: https://launchpad.net/~tchavadar/+archive/ubuntu/lp2141514) and have some comments:

- There is a duplicate (well: threefold) description in d/control:
"I: rocwmma source: duplicate-long-description librocwmma-dev librocwmma-docs librocwmma-tests [debian/control]"
could be as this for now:
"
--- debian/control 2026-02-18 15:11:01.731457102 +0100
+++ ../control 2026-02-18 15:10:05.838626363 +0100
@@ -37,7 +37,6 @@
  device code. This can benefit from compiler optimization in the generation of
  kernel assembly, and doesn't incur additional overhead costs of linking to
  external runtime libraries or having to launch separate kernels.
- Headers section.

 Package: librocwmma-tests
 Architecture: amd64 arm64
@@ -52,7 +51,6 @@
  device code. This can benefit from compiler optimization in the generation of
  kernel assembly, and doesn't incur additional overhead costs of linking to
  external runtime libraries or having to launch separate kernels.
- Test section.

 Package: librocwmma-docs
 Architecture: all
@@ -66,4 +64,3 @@
  device code. This can benefit from compiler optimization in the generation of
  kernel assembly, and doesn't incur additional overhead costs of linking to
  external runtime libraries or having to launch separate kernels.
- Documentation section.
"
- the quilt patches:
d/p/0001-remove-unknown-compiler-options.patch
d/p/0002-do-not-treat-doxygen-warnings-as-errors.patch
d/p/0003-fix-arm64-mcmodel-large-failure.patch
miss a dep-3 header.
They can be added with:
quilt header -e --dep3 0001-remove-unknown-compiler-options.patch # and so on ...
- then I see this warning:
"W: rocwmma source: debian-rules-calls-nproc [debian/rules:29]"
Recommended is to use DEB_BUILD_OPTION_PARALLEL instead of nproc.
(see: lintian-explain-tags debian-rules-calls-nproc)
- scr code copyright-wise things seem to be very tidy and the code is MIT/Expat.
But I see Canonical/Talha for copyright debian/* as MIT/Expat too,
but I think the standard for Canonical is still GPL-3 (iianm):
"
Files: debian/*
Copyright: 2018 Canonical Ltd
License: GPL-3
 This package is free software; you can redistribute it and/or modify
 it under the terms of the GNU General Public License as published by
 the Free Software Foundation; version 3 of the License.
 .
 This package is distributed in the hope that it will be useful,
 but WITHOUT ANY WARRANTY; without even the implied warranty of
 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
 GNU General Public License for more details.
 .
 You should have received a copy of the GNU General Public License
 along with this program. If not, see <https://www.gnu.org/licenses/>
 .
 On Debian systems, the complete text of the GNU General
 Public License version 3 can be found in "/usr/share/common-licenses/GPL-3".
 "
- And there are two blank lines 5 and 6 in d/copyright - either or should be removed.
- And I think that we usually have: "Maintainer: Ubuntu Developers <email address hidden>" in d/control.
(maybe keeping the old one in "XSBC-Original-Maintainer:")
- watch file is a v5, good
- We have a library, but no symbols file(s), no?
- The lib...

Read more...

Revision history for this message
Talha Can Havadar (tchavadar) wrote :

Thank you very much for the comments and review Frank! I am considering forwarding patch #3 but the #1 and #2 could be not relevant for upstream since they use different compiler and way to build docs.

About the license for debian files, I followed the advice given here: https://library.canonical.com/legal-processes/licensing-policy#:~:text=places%2E-,Packaging so it is same as the software being packaged.

I will be updating the description section for packages in d/control and let you know afterwards

Revision history for this message
Talha Can Havadar (tchavadar) wrote (last edit ):

Hello Frank,

- updated the patches with gbp so they should have an header including Forwarded field and Last-Update
- rocwmma is header only library so no so file is produced to consume
- updated the control file with descriptions
- build is taking long time one causing problems in launchpad infra nproc workaround which is inherited from llvm-toolchain package helps me to workaround this issue. Do you want me to put this in lintian-overrides?
- about the license I think I am following what is suggested for packaging which needs to follow how the software licensed. (but maybe I am interpreting it wrongly, https://library.canonical.com/legal-processes/licensing-policy#:~:text=places%2E-,Packaging )
- updated maintainer field
- about size of -tests package , yeah I hope it wont be a problem but need to hear from AA indeed.

Can you review again? and what is your idea on lintian overrides for nproc?

If source is still not available in ppa, changes are already pushed to the git repo in description

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.