[Feature] Update the memkind(1.7) package with support for Knights Mill

Bug #1637546 reported by Piotr Luc
4
This bug affects 1 person
Affects Status Importance Assigned to Milestone
intel
Fix Released
Undecided
Unassigned
memkind (Ubuntu)
Fix Released
Undecided
Unassigned

Bug Description

Update the memkind package with support for Knights Mill.
The patch is under review.

Target Release: 18.10
Version: 1.7 | latest

Revision history for this message
Piotr Luc (piotrluc) wrote :

The version v1.5.0 contains the KNM changes.

Revision history for this message
quanxian (quanxian-wang) wrote :

17.04 contains v1.1.0. Any plan to update memkind to 1.5.0?

Revision history for this message
Leann Ogasawara (leannogasawara) wrote :

We should look to get this updated for 17.10 and examine if the support is feasible to backport as an SRU for 17.04.

Robert Hooker (sarvatt)
Changed in intel:
assignee: nobody → Robert Hooker (sarvatt)
Robert Hooker (sarvatt)
Changed in intel:
assignee: Robert Hooker (sarvatt) → nobody
Revision history for this message
Leann Ogasawara (leannogasawara) wrote :

I've assigned a task for memkind for 17.10.

information type: Proprietary → Private
Revision history for this message
quanxian (quanxian-wang) wrote :

@Canonical, what is the status?

Revision history for this message
Leann Ogasawara (leannogasawara) wrote :

I see version 1.5.0 is currently in artful-proposed:

https://launchpad.net/ubuntu/+source/memkind/1.5.0-0ubuntu1

However it appears that it is failing to build. Eg. build log for amd64 is here:

https://launchpadlibrarian.net/336372549/buildlog_ubuntu-artful-amd64.memkind_1.5.0-0ubuntu1_BUILDING.txt.gz

Given this package is in Universe, Canonical offers no official support for this package. I suspect if you want this fixed and available in Artful, Intel will need to assist with providing patches.

Revision history for this message
Leann Ogasawara (leannogasawara) wrote :

Additional feedback from the Canonical Foundations Team is as follows:

A newer version of memkind appears to require a newer version of jemalloc than what is currently present in the Ubuntu archive (Debian is still at jemalloc 3.6.0 in unstable; so is Ubuntu; memkind requires jemalloc 5). The team did do the work to update the packaging, and went ahead and uploaded it knowing it would fail to build and stall in -proposed. They noted that memkind does bundle jemalloc in its sources, but it is best practice not to use bundled copies, so they did not enable the package to use this. jemalloc 5 is now available in Debian experimental; but this is an soname transition and since we are past feature freeze this is going to miss 17.10. We can sync jemalloc 5 as soon as the archive opens for 18.04 and get this resolved.

Revision history for this message
quanxian (quanxian-wang) wrote :

@michal

Would you provide help to Canonical for this issue? Thanks

Revision history for this message
Michal Lewandowski (m.lewandowski) wrote :

As far as I understand we wait now until jemalloc 5 gets into 18.04 archive. There are no plans to make memking 1.5.0 compatible with older jemalloc.

Revision history for this message
quanxian (quanxian-wang) wrote :

let's move it 18.04. I will use this as new request for memkind 1.6 as discussed in the Canonical/Intel meeting. Any question, let me know.

summary: - [Feature] Update the memkind package with support for Knights Mill
+ [Feature] Update the memkind(1.6) package with support for Knights Mill
description: updated
Revision history for this message
Paweł K (pkochane) wrote : Re: [Feature] Update the memkind(1.6) package with support for Knights Mill

Since memkind 1.7 was recently released, could this request be updated to enable memkind 1.7 in 18.04?
Memkind 1.7 can be found at https://github.com/memkind/memkind/releases/tag/v1.7.0

Regarding having jemalloc sources inside memkind, we do not think that disabling such behavoiur is a good idea. Memkind is using unstable jemalloc's API, so we cannot guarentee how memkind libary would behave in case of changes of jemalloc. Also, we are testing memkind with specific jemalloc version (currently 5.0) and we cannot guarantee performance results with different version of jemalloc. Would it be possible to treat memkind as exception?

Revision history for this message
quanxian (quanxian-wang) wrote :

yes, I think so.

@Paul, if there is any concerns, just input your comment. Thanks

description: updated
Paweł K (pkochane)
summary: - [Feature] Update the memkind(1.6) package with support for Knights Mill
+ [Feature] Update the memkind(1.7) package with support for Knights Mill
quanxian (quanxian-wang)
description: updated
description: updated
quanxian (quanxian-wang)
tags: added: user-space-pkgs
Revision history for this message
Jeff Lane  (bladernr) wrote :
Revision history for this message
Paweł K (pkochane) wrote :

What do you mean by "jemalloc seems to be 3.6, not version 5 mentioned in this bug."?
Is there any action required from memkind developers?

Revision history for this message
Jeff Lane  (bladernr) wrote :

Per Leann's comment #7 above:

+++
Additional feedback from the Canonical Foundations Team is as follows:

A newer version of memkind appears to require a newer version of jemalloc than what is currently present in the Ubuntu archive (Debian is still at jemalloc 3.6.0 in unstable; so is Ubuntu; memkind requires jemalloc 5). The team did do the work to update the packaging, and went ahead and uploaded it knowing it would fail to build and stall in -proposed. They noted that memkind does bundle jemalloc in its sources, but it is best practice not to use bundled copies, so they did not enable the package to use this. jemalloc 5 is now available in Debian experimental; but this is an soname transition and since we are past feature freeze this is going to miss 17.10. We can sync jemalloc 5 as soon as the archive opens for 18.04 and get this resolved.
+++

Bionic still has jemalloc 3.6.0, it appears the update to version 5 did not occur. I'll ping the Foundations team and see if there is anything we can do but as we are past FF again, I don't know that there is anything that can be done. That said, If you were to snap this instead, you could ensure the snap included any jemalloc version you need or desire. As they indicated, it's preferable to not include experimental or different versions of shared libraries in a deb package, with debs it's entirely possible that could lead to a conflict or errors with other packages looking for those libs. (I'm not saying that will happen in this case, just that it opens the door for that possibility).

But a snap is self contained and you can have any library at any version you need regardless of what other tools are using or calling. Additionally, Intel could create the snap packages and push them to the snap store at your convenience regardless of where we are in the current development cycle, and regardless of any freeze dates.

Revision history for this message
Jeff Lane  (bladernr) wrote :

Update. This will not make 18.04. As of today, memkind 1.7 does finally build using jemalloc 5, previous versions would now, as I understand it.

However, jemalloc has a large number of reverse depenencies in Ubuntu, and so bumping it to version 5 would require not just work for memkind, but for a whole host of other packages and it is not possible to do that work in the 3 weeks remaining of this cycle.

This could be re-visited for 18.10.

Revision history for this message
Jeff Lane  (bladernr) wrote :

Errr... "previous versions would NOT, as I understand it."

Revision history for this message
Paweł K (pkochane) wrote :

Jeff,
As I wrote in Comment 11 (https://bugs.launchpad.net/intel/+bug/1637546/comments/11), memkind has a copy of jemalloc 5.0 in its sources. This internally used jemalloc is hidden inside memkind library (its symbols are not exported outside). Memkind is also using jemallocs unstable API, which might change or even be removed in future versions of jemalloc. Changes in jemalloc could have a big impact on performance and library stability, so we decided to have its copy inside memkind library.
Generally, memkind does not require external jemalloc and it is also not providing API to internally used jemalloc.
Regards,
Paweł

quanxian (quanxian-wang)
description: updated
quanxian (quanxian-wang)
tags: added: intel-upkg-18.10
removed: user-space-pkgs
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package memkind - 1.7.0-0ubuntu1

---------------
memkind (1.7.0-0ubuntu1) bionic; urgency=medium

  * New upstream release.
  * Add versioned build-dependency on libjemalloc-dev (>= 5).
  * Refresh patch for upstream build system changes.
  * Refresh copyright.

 -- Steve Langasek <email address hidden> Mon, 02 Apr 2018 20:07:56 +0000

Changed in memkind (Ubuntu):
status: New → Fix Released
Changed in intel:
status: New → Fix Released
quanxian (quanxian-wang)
information type: Private → Public
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.