diff --git a/.launchpadlib/api.launchpad.net/cache/api.launchpad.net,devel,-application,vnd.sun.wadl+xml,2f09acb494bdefdbf8ef0d1396a05e86 b/.launchpadlib/api.launchpad.net/cache/api.launchpad.net,devel,-application,vnd.sun.wadl+xml,2f09acb494bdefdbf8ef0d1396a05e86 new file mode 100644 index 0000000000000000000000000000000000000000..e4cae969f6888347f081ab82fec1446c85140aac --- /dev/null +++ b/.launchpadlib/api.launchpad.net/cache/api.launchpad.net,devel,-application,vnd.sun.wadl+xml,2f09acb494bdefdbf8ef0d1396a05e86 @@ -0,0 +1,55547 @@ +status: 200 +date: Mon, 05 Feb 2024 23:25:35 GMT +server: Apache/2.4.41 (Ubuntu) +content-location: index.wadl +vary: negotiate,accept,Accept-Encoding +tcn: choice +last-modified: Wed, 31 Jan 2024 08:46:52 GMT +etag: "22bda6-61039eb973700-gzip" +accept-ranges: bytes +content-type: application/vnd.sun.wadl+xml; qs=0.9 +x-cache: MISS from juju-98d295-prod-launchpad-29 +x-cache-lookup: MISS from juju-98d295-prod-launchpad-29:3128 +via: 1.1 juju-98d295-prod-launchpad-29 (squid/4.10) +content-length: 2276774 +-content-encoding: gzip +-varied-accept: application/vnd.sun.wadl+xml +-varied-accept-encoding: gzip, deflate + + + +]> + + + The Launchpad web service allows automated + clients to access most of the functionality available on the + Launchpad web site. For help getting started, see + the help wiki. + + This version of the web service reflects the most + recent changes made. It may abruptly change without + warning. Periodically, these changes are bundled up and given a + permanent version number. + + + + + + + + + The root of the web service. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The link to the WADL description of this resource. + + + + + + + + + + +Interface for ArchiveSet + + + + + + + + + + +Return the IArchive with the given archive reference. + + + + + The name of the operation being invoked. + + + +Archive reference string + + + + + + + + + + + + + + + + +Interface representing the set of branches. + + + + + + + + + + +

Find a branch by its ~owner/product/name unique name.

+

Return None if no match was found.

+ +
+ + + + The name of the operation being invoked. + + + +Branch unique name + + + + + + + + + +
+ + +

Find a branch by URL.

+

Either from the external specified in Branch.url, from the URL on +http://bazaar.launchpad.net/ or the lp: URL.

+

This is a frontend shim to IBranchLookup.getByUrl to allow it to be +exported over the API. If you want to call this from within the +Launchpad app, use the IBranchLookup version instead.

+

Return None if no match was found.

+ +
+ + + + The name of the operation being invoked. + + + +Branch URL + + + + + + + + + +
+ + +

Finds branches by URL.

+

Either from the external specified in Branch.url, from the URL on +http://bazaar.launchpad.net/, or from the lp: URL.

+

This is a frontend shim to IBranchLookup.getByUrls to allow it to be +exported over the API. If you want to call this from within the +Launchpad app, use the IBranchLookup version instead.

+ +++ + + + + + +
param urls:An iterable of URLs expressed as strings.
return:A dictionary mapping URLs to branches. If the URL has no +associated branch, the URL will map to None.
+ +
+ + + + The name of the operation being invoked. + + + +

A list of URLs of branches

+

These can be URLs external to Launchpad, lp: URLs, or http://bazaar.launchpad.net/ URLs, or any mix of all these different kinds.

+ +
+ +
+ +
+ +
+ + +

Find a branch by its path.

+

The path is the same as its lp: URL, but without the leading lp:, so +it may be in any of these forms:

+
+Unique names:
+    ~OWNER/PROJECT/NAME
+    ~OWNER/DISTRO/SERIES/SOURCE/NAME
+    ~OWNER/+junk/NAME
+Aliases linked to other objects:
+    PROJECT
+    PROJECT/SERIES
+    DISTRO/SOURCE
+    DISTRO/SUITE/SOURCE
+
+

Return None if no match was found.

+ +
+ + + + The name of the operation being invoked. + + + +Branch path + + + + + + + + + +
+ + +

Return a collection of branches.

+ +++ + + + + + + + + + + + +
param user:An IPerson. Only branches visible by this user will +be returned.
param order_by:An item from the BranchListingSort enumeration, +or None to return an unordered result set.
param modified_since_date:
 If not None, return only branches whose +date_last_modified is greater than this date.
param eager_load:
 If True (the default because this is used in the +web service and it needs the related objects to create links) +eager load related objects (products, code imports etc).
+ +
+ + + + The name of the operation being invoked. + + + +Sort order + + + + + + + + + + + + + + +

Modified since date

+

Return only branches whose date_last_modified is greater than or equal to this date.

+ +
+ +
+ +
+ + + + +
+ + +

Return the named branches visible to both user and person.

+

Anonymous requesters don't get any information.

+ +++ + + + + + + + + +
param user:The user requesting the information. If the user is None +then we return an empty dict.
param person:The person whose branch visibility we wish to check.
param branch_names:
 The unique names of the branches to check.
+

Return a dict with the following values: +person_name: the displayname of the person. +visible_branches: a list of the unique names of the branches which +the requester and specified person can both see.

+

This API call is provided for use by the client Javascript. It is not +designed to efficiently scale to handle requests for large numbers of +branches.

+ +
+ + + + The name of the operation being invoked. + + + +The person whose branch visibility is being checked. + + + + + +List of branch unique names + + + + + + +
+ + +

Return the merge proposals that resulted in this revision.

+ +++ + + + + + + + +
param merged_revision:
 The revision_id of the revision that resulted +from this merge proposal.
param visible_by_user:
 The user to whom the proposals must be +visible. If None, only public proposals will be returned.
+ +
+ + + + The name of the operation being invoked. + + + + + + + + + + + +
+
+ + + + + +

A set of IBugTracker's.

+

Each BugTracker is a distinct instance of a bug tracking tool. For +example, bugzilla.mozilla.org is distinct from bugzilla.gnome.org.

+ +
+ + + + + + + + + +

Get a BugTracker by its name.

+

If no tracker with the given name exists, return default.

+ +
+ + + + The name of the operation being invoked. + + + +The bug tracker name + + + + + + + + + +
+ + +Return one or None BugTracker's by baseurl + + + + + The name of the operation being invoked. + + + +The base URL of the bug tracker + + + + + + + + + + + + +

Make sure that there is a bugtracker for the given base url.

+

If not, create one using the given attributes.

+ +
+ + + + The name of the operation being invoked. + + + +

Location

+

The top-level URL for the bug tracker, or an upstream email address. This must be accurate so that Launchpad can link to external bug reports.

+ +
+ +
+ + +Bug Tracker Type + + + + + + + + + + + + + + + + + + +

Title

+

A descriptive label for this tracker to show in listings.

+ +
+ +
+ + +

Summary

+

A brief introduction or overview of this bug tracker instance.

+ +
+ +
+ + +

Contact details

+

The contact details for the external bug tracker (so that, for example, its administrators can be contacted about a security breach).

+ +
+ +
+ + +

Name

+

A URL-friendly name for the bug tracker, such as "mozilla-bugs".

+ +
+ +
+
+
+ + + + + + +
+
+ + + + + +

Collections of builders.

+

IBuilderSet provides access to all Builders in the system, +and also acts as a Factory to allow the creation of new Builders. +Methods on this interface should deal with the set of Builders: +methods that affect a single Builder should be on IBuilder.

+ +
+ + + + + + + + + +Retrieve a builder by name + + + + + The name of the operation being invoked. + + + +Builder name + + + + + + + + + + + + +

Return the number of pending builds for each processor.

+ +++ + + + +
return:

a dict of tuples with the queue size and duration for +each processor and virtualisation. For example:

+
+{
+    'virt': {
+                '386': (1, datetime.timedelta(0, 60)),
+                'amd64': (2, datetime.timedelta(0, 30)),
+            },
+    'nonvirt':...
+}
+
+

The tuple contains the size of the queue, as an integer, +and the sum of the jobs 'estimated_duration' in queue, +as a timedelta or None for empty queues.

+
+ +
+ + + + The name of the operation being invoked. + + + + +
+ + +Return all builders with the given properties. + + + + + The name of the operation being invoked. + + + +Processor + + + + + +Virtualized + + + + + + + + + + + + +

Create a new builder.

+

The builder will be set to manual. An admin needs to verify its +configuration and set it to automatic before jobs will be +dispatched.

+ +
+ + + + The name of the operation being invoked. + + + +

Processors

+

Processors identifying jobs which can be built by this device.

+ +
+ +
+ + +

URL

+

The URL to the build machine, used as a unique identifier. Includes protocol, host and port only, e.g.: http://farm.com:8221/

+ +
+ +
+ + +

Name

+

The builder name used for reference purposes

+ +
+ +
+ + +

Title

+

The builder title. Should be just a few words.

+ +
+ +
+ + +

Publicly Visible

+

Whether or not to present the builder publicly.

+ +
+ +
+ + +

Virtualized

+

Whether or not the builder is a virtual Xen instance.

+ +
+ +
+ + +

VM host

+

The machine hostname hosting the virtual buildd-worker, e.g.: foobar-host.ppa

+ +
+ +
+ + +

Open resources

+

Resource tags offered by this builder, that can be required by a build and if required must match.

+ +
+ +
+ + +

Restricted resources

+

Resource tags offered by this builder, indicating that the builder may only be used by builds that explicitly require these tags.

+ +
+ +
+
+
+ + + + + + +
+
+ + + + + +Interface representing the set of bases for charms. + + + + + + + + + + +

Return the ICharmBase for this distro series.

+ +++ + + + + +
raises NoSuchCharmBase:
 if no base exists for this distro series.
+ +
+ + + + The name of the operation being invoked. + + + +Distro series + + + + + + + + + +
+ + +Create an ICharmBase. + + + + + The name of the operation being invoked. + + + +Distro series + + + + + +

Source snap channels for builds

+

A dictionary mapping snap names to channels to use when building charm recipes that specify this base. The special '_byarch' key may have a mapping of architecture names to mappings of snap names to channels, which if present override the channels declared at the top level when building for those architectures.

+ +
+ +
+ + + + +
+
+ + + + + + +
+
+ + + + + +A utility to create and access charm recipes. + + + + + + + + + + +Returns the appropriate ICharmRecipe for the given objects. + + + + + The name of the operation being invoked. + + + +Owner + + + + + +Project + + + + + +Recipe name + + + + + + + + + + + + +Return all charm recipes with the given owner. + + + + + The name of the operation being invoked. + + + +Owner + + + + + + + + + + + + +Create an ICharmRecipe. + + + + + The name of the operation being invoked. + + + +

Owner

+

The owner of this charm recipe.

+ +
+ +
+ + +The project that this charm recipe is associated with + + + + + +

Charm recipe name

+

The name of the charm recipe.

+ +
+ +
+ + +

Description

+

A description of the charm recipe.

+ +
+ +
+ + +

Git branch

+

The Git branch containing a charm recipe.

+ +
+ +
+ + +

Build path

+

Subdirectory within the branch containing metadata.yaml.

+ +
+ +
+ + +

Automatically build when branch changes

+

Whether this charm recipe is built automatically when its branch changes.

+ +
+ +
+ + +

Source snap channels for automatic builds

+

A dictionary mapping snap names to channels to use when building this charm recipe. +Supported snap names: 'charmcraft', 'core', 'core18', 'core20', 'core22', 'core24'

+ +
+ +
+ + +

Automatically upload to store

+

Whether builds of this charm recipe are automatically uploaded to the store.

+ +
+ +
+ + +

Registered store name

+

The registered name of this charm in the store.

+ +
+ +
+ + +

Store channels

+

Channels to release this charm to after uploading it to the store. A channel is defined by a combination of an optional track, a risk, and an optional branch, e.g. '2.1/stable/fix-123', '2.1/stable', 'stable/fix-123', or 'stable'.

+ +
+ +
+ + +

Information type

+

The type of information contained in this charm recipe.

+ +
+ + + + + + + +
+
+
+ + + + + + +
+
+ + + + + +A container for countries. + + + + + + + + + + +Return a country by its name. + + + + + The name of the operation being invoked. + + + +Name + + + + + + + + + + + + +Return a country by its code. + + + + + The name of the operation being invoked. + + + +Code + + + + + + + + + + + + + + + + +The set of ICve objects. + + + + + + + + + + + + + + +Interface for DistrosSet + + + + + + + + + + + + + + +Interface representing the set of Git repositories. + + + + + + + + + + +

Find a repository by its ID.

+

Return None if no match was found.

+ +
+ + + + The name of the operation being invoked. + + + +Repository ID + + + + + + + + + +
+ + +

Find a repository by its path.

+

Any of these forms may be used:

+
+Unique names:
+    ~OWNER/PROJECT/+git/NAME
+    ~OWNER/DISTRO/+source/SOURCE/+git/NAME
+    ~OWNER/+git/NAME
+Owner-target default aliases:
+    ~OWNER/PROJECT
+    ~OWNER/DISTRO/+source/SOURCE
+Official aliases:
+    PROJECT
+    DISTRO/+source/SOURCE
+
+

Return None if no match was found.

+ +
+ + + + The name of the operation being invoked. + + + +Repository path + + + + + + + + + +
+ + +

Get all repositories for a target.

+ +++ + + + + + + + + + + + + +
param user:An IPerson. Only repositories visible by this user +will be returned.
param target:An IHasGitRepositories, or None to get repositories +for all targets.
param order_by:An item from the GitListingSort enumeration, or +None to return an unordered result set.
param modified_since_date:
 If not None, return only repositories +whose date_last_modified is greater than this date.
return:A collection of IGitRepository objects.
+ +
+ + + + The name of the operation being invoked. + + + +Target + + + + + +Sort order + + + + + + + + + + + +

Modified since date

+

Return only repositories whose date_last_modified is greater than or equal to this date.

+ +
+ +
+ +
+ + + + +
+ + +

Get number of repositories qualifying for a repack.

+ +++ + + + +
return:The number of IGitRepository objects qualifying +for a repack.
+ +
+ + + + The name of the operation being invoked. + + + + +
+ + +

Return the named repositories visible to both user and person.

+

Anonymous requesters don't get any information.

+ +++ + + + + + + + + +
param user:The user requesting the information. If the user is +None then we return an empty dict.
param person:The person whose repository visibility we wish to +check.
param repository_names:
 The unique names of the repositories to +check.
+

Return a dict with the following values: +person_name: the displayname of the person. +visible_repositories: a list of the unique names of the repositories +which the requester and specified person can both see.

+

This API call is provided for use by the client Javascript. It is +not designed to efficiently scale to handle requests for large +numbers of repositories.

+ +
+ + + + The name of the operation being invoked. + + + +The person whose repository visibility is being checked. + + + + + +List of repository unique names + + + + + + +
+ + +

Get the default repository for a target.

+ +++ + + + + + + + + +
param target:An IHasGitRepositories.
raises GitTargetError:
 if target is an IPerson.
return:An IGitRepository, or None.
+ +
+ + + + The name of the operation being invoked. + + + +Target + + + + + + + + + +
+ + +

Get a person's default repository for a target.

+ +++ + + + + + + + + + + +
param owner:An IPerson.
param target:An IHasGitRepositories.
raises GitTargetError:
 if target is an IPerson.
return:An IGitRepository, or None.
+ +
+ + + + The name of the operation being invoked. + + + +Owner + + + + + +Target + + + + + + + + + +
+ + +

Get the top badly packed repositories.

+ +++ + + + + + +
param limit:The number of badly packed repositories +that the endpoint should return - it is 50 by default.
return:A list of the worst badly packed repositories.
+ +
+ + + + The name of the operation being invoked. + + + + + + + + +
+ + +

Create a Git repository and return it.

+ +++ + + + + + + + + + + + + + + + + + + + +
param repository_type:
 The GitRepositoryType of the new +repository.
param registrant:
 The IPerson who registered the new repository.
param owner:The IPerson who owns the new repository.
param target:The IProduct, IDistributionSourcePackage, +IOCIProjectName, or IPerson that the new repository is +associated with.
param name:The repository name.
param information_type:
 Set the repository's information type to +one different from the target's default. The type must conform +to the target's code sharing policy. (optional)
param with_hosting:
 Create the repository on the hosting service.
+ +
+ + + + The name of the operation being invoked. + + + +

Owner

+

The owner of this Git repository. This controls who can modify the repository.

+ +
+ +
+ + +

Target

+

The target of the repository.

+ +
+ +
+ + +

Name

+

The repository name. Keep very short, unique, and descriptive, because it will be used in URLs.

+ +
+ +
+ + +

Information type

+

The type of information contained in this repository.

+ +
+ + + + + + + +
+
+
+ + + + + + +
+ + +

Set the default repository for a target.

+ +++ + + + + + + + + + +
param target:An IHasGitRepositories.
param repository:
 An IGitRepository, or None to unset the default +repository.
raises GitTargetError:
 if target is an IPerson.
+ +
+ + + + The name of the operation being invoked. + + + +Target + + + + + +Git repository + + + + + + +
+ + +

Set a person's default repository for a target.

+ +++ + + + + + + + + + + + + + +
param owner:An IPerson.
param target:An IHasGitRepositories.
param repository:
 An IGitRepository, or None to unset the default +repository.
param user:The IPerson who is making the change.
raises GitTargetError:
 if target is an IPerson.
+ +
+ + + + The name of the operation being invoked. + + + +Owner + + + + + +Target + + + + + +Git repository + + + + + + +
+
+ + + + + +

The collection of languages.

+

The standard get method will return only the visible languages. +If you want to access all languages known to Launchpad, use +the getAllLanguages method.

+ +
+ + + + + + + + + +Return a result set of all ILanguages from Launchpad. + + + + + The name of the operation being invoked. + + + + + + + + +
+ + + + + +A utility to create and access live filesystems. + + + + + + + + + + +Return the appropriate ILiveFS for the given objects. + + + + + The name of the operation being invoked. + + + +Owner + + + + + +Distroseries + + + + + +Live filesystem name + + + + + + + + + + + + +Create an ILiveFS. + + + + + The name of the operation being invoked. + + + +

Owner

+

The owner of this live filesystem image.

+ +
+ +
+ + +

Distro Series

+

The series for which the image should be built.

+ +
+ +
+ + +

Name

+

The name of the live filesystem image.

+ +
+ +
+ + +A dict of data about the image. Entries here will be passed to the builder. + + + +
+
+ + + + + + +
+
+ + + + + +Application root for malone. + + + + + + + + + + +

Search the IBugTasks reported on this entity.

+ +++ + + + +
search_params:a BugTaskSearchParams object
+

Return an iterable of matching results.

+

Note: milestone is currently ignored for all IBugTargets +except IProduct.

+ +
+ + + + The name of the operation being invoked. + + + +List of fields by which the results are ordered. + + + + + +Bug ID or search text. + + + + + +

Status

+

Show only bugs with the given status value or list of values.

+ +
+ +
+ + +

Importance

+

Show only bugs with the given importance or list of importances.

+ +
+ +
+ + +

Information Type

+

Show only bugs with the given information type or list of information types.

+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Show only bugs with patches available. + + + + + +Show only bugs associated with a CVE + + + + + +

Tags

+

String or list of strings for tags to search. To exclude, prepend a '-', e.g. '-unwantedtag'

+ +
+ +
+ + +

Tags combination

+

Search for any or all of the tags specified.

+ +
+ + + +
+ + +Omit bugs marked as duplicate, + + + + + +

Status upstream

+

Indicates the status of any remote watches associated with the bug. Possible values include: pending_bugwatch, hide_upstream, resolved_upstream, and open_upstream.

+ +
+ +
+ + +

Milestone

+

Show only bug tasks targeted to this milestone.

+ +
+ +
+ + +

Component

+

Distribution package archive grouping. E.g. main, universe, multiverse

+ +
+ +
+ + + + + + +Exclude bugs with packages specified + + + + + +Search for bugs that are linked to branches or for bugs that are not linked to branches. + + + + + + + + +Search for bugs that have been modified since the given date. + + + + + +Search for bugs that have been created since the given date. + + + + + +Search for bugs that were created before the given date. + + + + + +Omit bugs targeted to a series + + + + + +Search for bugs that are linked to blueprints or for bugs that are not linked to blueprints. + + + + + + + +
+ + + + +
+ + +

Search bugtasks matching the specified criteria.

+

The only criteria currently supported is to search for a bugtask with +the specified bug id.

+ +++ + + + +
return:a list of matching bugs represented as json data
+ +
+ + + + The name of the operation being invoked. + + + +Bug ID + + + + + + + + + + +
+ + +

Create a bug (with an appropriate bugtask) and return it.

+ +++ + + + + + + + + + + + + + + + + + + +
param target:The Project, Distribution or DistributionSourcePackage +affected by this bug.
param title:The title shown in bug listings.
param description:
 The description of the issue.
param information_type:
 Set the bug's information type to one +different from the project's default. The type must conform +to the project's bug sharing policy. (optional)
param tags:A list of bug tags. (optional)
param security_related:
 Is this bug's information type +Private Security? (deprecated)
param tags:Is this bug's information type Private +user data. (deprecated)
+

Things to note when using this factory:

+
+
    +
  • The reporter will be subscribed to the bug.
  • +
  • Only people that the project shares with will see the bug +when the bug's information type is Proprietary, Private, or +Private Security.
  • +
+
+ +
+ + + + The name of the operation being invoked. + + + +

Summary

+

A one-line summary of the problem.

+ +
+ +
+ + +

Description

+

A detailed description of the problem, +including the steps required to reproduce it.

+ +
+ +
+ + +

Tags

+

Space-separated keywords for classifying this bug report.

+ +
+ +
+ + +

Information Type

+

The type of information contained in this bug report.

+ +
+ + + + + + + +
+ + +This bug is a security vulnerability. + + + + + +

This bug report should be private

+

Private bug reports are visible only to their subscribers.

+ +
+ +
+ + +The project, distribution or source package that has this bug. + + + +
+
+ + + + + + +
+
+ + + + + +An interface for multiple package sets. + + + + + + + + + + +

Return the single package set with the given name (if any).

+ +++ + + + + + + + + + + + +
param distroseries:
 the distroseries to which the new packageset +is related.
param name:the name of the package set sought.
return:An IPackageset instance.
raise NoSuchPackageSet:
 if no package set is found.
+ +
+ + + + The name of the operation being invoked. + + + +Valid package set name + + + + + +

Distribution series

+

The distroseries to which this package set is related.

+ +
+ +
+ +
+ + + + +
+ + +

Return the package sets associated with the given distroseries.

+ +++ + + + + + + +
param distroseries:
 A DistroSeries.
return:An iterable collection of IPackageset instances.
+ +
+ + + + The name of the operation being invoked. + + + +

Distribution series

+

The distroseries to which this package set is related.

+ +
+ +
+ +
+ + + + +
+ + +

Get the package sets that include this source package.

+

Return all package sets that directly or indirectly include the +given source package name.

+ +++ + + + + + + + + + + + + + + + +
param sourcepackagename:
 the included source package name; can be +either a string or a ISourcePackageName.
param distroseries:
 the IDistroSeries in which to look for sets. +If omitted, matching package sets from all series will be +returned.
param direct_inclusion:
 if this flag is set to True, then only +package sets that directly include this source package name will +be considered.
raises NoSuchSourcePackageName:
 if a source package with the given +name cannot be found.
return:A (potentially empty) sequence of IPackageset instances.
+ +
+ + + + The name of the operation being invoked. + + + +Source package name + + + + + +

Distribution series

+

The distroseries to which this package set is related.

+ +
+ +
+ + + + + +
+ + + + +
+ + +

Create a new package set.

+ +++ + + + + + + + + + + + + + + + + + + + +
param name:the name of the package set to be created.
param description:
 the description for the package set to be created.
param owner:the owner of the package set to be created.
param distroseries:
 the distroseries to which the new packageset +is related.
param related_set:
 the newly created package set is to be related to +related_set (by being placed in the same package group).
raises DuplicatePackagesetName:
 if a package set with the same name +exists in distroseries already.
return:a newly created IPackageset.
+ +
+ + + + The name of the operation being invoked. + + + +Valid package set name + + + + + +Package set description + + + + + +

Person

+

The person who owns this package set.

+ +
+ +
+ + +

Distroseries

+

The distribution series to which the packageset is related.

+ +
+ +
+ + +

Related package set

+

The new package set will share the package set group with this one.

+ +
+ +
+
+
+ + + + + + +
+
+ + + + + +Combined schema for operations on a group of Persons. + + + + + + + + + + +

Return the person with the given email address.

+

Return None if there is no person with the given email address.

+ +
+ + + + The name of the operation being invoked. + + + + + + + + + + + +
+ + +

Return all non-merged Persons and Teams whose name, displayname or +email address match <text>.

+

The results will be ordered using the default ordering specified in +Person._defaultOrder.

+

While we don't have Full Text Indexes in the emailaddress table, we'll +be trying to match the text only against the beginning of an email +address.

+ +
+ + + + The name of the operation being invoked. + + + +Search text + + + + + + + + + +
+ + +

Return all non-merged Persons with at least one email address whose +name, displayname or email address match <text>.

+

If text is an empty string, all persons with at least one email +address will be returned.

+

The results will be ordered using the default ordering specified in +Person._defaultOrder.

+

If exclude_inactive_accounts is True, any accounts whose +account_status is any of INACTIVE_ACCOUNT_STATUSES will not be in the +returned set.

+

If must_have_email is True, only people with one or more email +addresses are returned.

+

While we don't have Full Text Indexes in the emailaddress table, we'll +be trying to match the text only against the beginning of an email +address.

+

If created_before or created_after are not None, they are used to +restrict the search to the dates provided.

+ +
+ + + + The name of the operation being invoked. + + + +Search text + + + + + +Created after + + + + + +Created before + + + + + + + + + +
+ + +

Return all Teams whose name, displayname or email address +match <text>.

+

The results will be ordered using the default ordering specified in +Person._defaultOrder.

+

While we don't have Full Text Indexes in the emailaddress table, we'll +be trying to match the text only against the beginning of an email +address.

+ +
+ + + + The name of the operation being invoked. + + + +Search text + + + + + + + + + +
+ + +Get GDPR-related data for a user from their email address. + + + + + The name of the operation being invoked. + + + + + + + + + + + +

Get the person for a given OpenID identifier.

+ +++ + + + + + + +
param openid_identifier:
 full OpenID identifier URL for the user.
return:the corresponding IPerson or None if the identifier is +unknown
+ +
+ + + + The name of the operation being invoked. + + + + + + + + + + + +
+ + +

Restricted person creation API for SSO.

+

This method can only be called by the Ubuntu SSO service. It +finds the username for an account by OpenID identifier.

+ +++ + + + + + + +
param user:the IPerson performing the operation. Only the +ubuntu-sso celebrity is allowed.
param openid_identifier:
 OpenID identifier suffix for the user. +This is not the full URL, just the unique suffix portion.
+ +
+ + + + The name of the operation being invoked. + + + +OpenID identifier suffix + + + + + + +
+ + +

Restricted SSH key creation API for SSO.

+

This method can only be called by the Ubuntu SSO service. It finds and +returns all the SSH keys belonging to the account identified by the +openid_identifier parameter.

+ +++ + + + + + + +
param user:the IPerson performing the operation. Only the +ubuntu-sso celebrity is allowed.
param openid_identifier:
 OpenID identifier suffix for the user. +This is not the full URL, just the unique suffix portion.
+ +
+ + + + The name of the operation being invoked. + + + +OpenID identifier suffix + + + + + + +
+ + +Create and return a new Team with given arguments. + + + + + The name of the operation being invoked. + + + +

Name

+

A short unique name, beginning with a lower-case letter or number, and containing only letters, numbers, dots, hyphens, or plus signs.

+ +
+ +
+ + +

Display Name

+

Your name as you would like it displayed throughout Launchpad. Most people use their full name here.

+ +
+ +
+ + +

Team Description

+

Obsolete. Use description.

+ +
+ +
+ + +

Subscription period

+

Number of days a new subscription lasts before expiring. You can customize the length of an individual subscription when approving it. Leave this empty or set to 0 for subscriptions to never expire.

+ +
+ +
+ + +

Self renewal period

+

Number of days members can renew their own membership. The number can be from 1 to 3650 (10 years).

+ +
+ +
+ + +

Membership policy

+

Obsolete: use membership_policy

+ +
+ + + + + +
+ + +Membership policy + + + + + + + +
+
+ + + + + + +
+ + +

Restricted person creation API for Software Center Agent.

+

This method can only be called by Software Center Agent. It gets +a person by OpenID identifier or creates a new Launchpad person +from the OpenID identifier, email address and display name.

+ +++ + + + + + + + + + + + + +
param user:the IPerson performing the operation. Only the +software-center-agent celebrity is allowed.
param openid_identifier:
 OpenID identifier suffix for the user. +This is not the full URL, just the unique suffix portion.
param email_address:
 the email address of the user.
param full_name:
 the full name of the user.
+ +
+ + + + The name of the operation being invoked. + + + +OpenID identifier suffix + + + + + +Email address + + + + + +Display name + + + + + + + + + +
+ + +

Restricted person creation API for SSO.

+

This method can only be called by the Ubuntu SSO service. It +reserves a username for an account by OpenID identifier, as long as +the user has no Launchpad account.

+ +++ + + + + + + + + + + + + + + +
param user:the IPerson performing the operation. Only the +ubuntu-sso celebrity is allowed.
param openid_identifier:
 OpenID identifier suffix for the user. +This is not the full URL, just the unique suffix portion.
param name:the desired username.
raises:InvalidName if the username doesn't meet character +constraints.
raises:NameAlreadyTaken if the username is already in use.
raises:NotPlaceholderAccount if the OpenID identifier has a +non-placeholder Launchpad account.
+ +
+ + + + The name of the operation being invoked. + + + +OpenID identifier suffix + + + + + +

Name

+

A short unique name, beginning with a lower-case letter or number, and containing only letters, numbers, dots, hyphens, or plus signs.

+ +
+ +
+ + +Don't save changes + + + +
+
+ +
+ + +

Restricted SSH key creation API for SSO.

+

This method can only be called by the Ubuntu SSO service. It adds a new +SSH key to the account identified by 'openid_identifier' based on the +'key_text' parameter.

+ +++ + + + + + + + + + + + + + + +
param user:the IPerson performing the operation. Only the +ubuntu-sso celebrity is allowed.
param openid_identifier:
 OpenID identifier suffix for the user. +This is not the full URL, just the unique suffix portion.
param key_text:The full text of the SSH Key.
raises NoSuchAccount:
 If the openid_identifier specified does not +match any account.
raises SSHKeyAdditionError:
 If the ssh key_text is invalid.
+ +
+ + + + The name of the operation being invoked. + + + +OpenID identifier suffix + + + + + +SSH key text + + + + + +Don't save changes + + + + + + +
+ + +

Restricted SSH key deletion API for SSO.

+

This method can only be called by the Ubuntu SSO service. It deletes an +SSH key from the account identified by 'openid_identifier' based on the +'key_text' parameter.

+ +++ + + + + + + + + + + + + + + +
param user:the IPerson performing the operation. Only the +ubuntu-sso celebrity is allowed.
param openid_identifier:
 OpenID identifier suffix for the user. +This is not the full URL, just the unique suffix portion.
param key_text:The full text of the SSH Key.
raises NoSuchAccount:
 If the openid_identifier specified does not +match any account.
raises KeyAdditionError:
 If the key text is invalid.
+ +
+ + + + The name of the operation being invoked. + + + +OpenID identifier suffix + + + + + +SSH key text + + + + + +Don't save changes + + + + + + +
+
+ + + + + +The set of Poll objects. + + + + + + + + + + +

Search for polls.

+ +++ + + + + + + + + + +
param team:An optional ITeam to filter by.
param status:A collection containing as many values as you want +from PollStatus. Defaults to PollStatus.ALL.
param order_by:An optional PollSort item indicating how to sort +the results. Defaults to PollSort.NEWEST_FIRST.
param when:Used only by tests, to filter for polls open at a +specific date.
+ +
+ + + + The name of the operation being invoked. + + + +Team + + + + + +

Poll statuses

+

A list of one or more of 'open', 'closed', or 'not-yet-opened'. Defaults to all statuses.

+ +
+ +
+ + +Sort order + + + + + + + + +
+ + + + +
+
+ + + + + +Operations related to Processor instances. + + + + + + + + + + +

Return the IProcessor instance with the matching name.

+ +++ + + + + + + + + +
param name:The name to look for.
raise ProcessorNotFound:
 if there is no processor with that name.
return:A IProcessor instance if found
+ +
+ + + + The name of the operation being invoked. + + + + + + + + + + + +
+
+ + + + + + + + + + + + + + +Return an iterator over products that need to be reviewed. + + + + + The name of the operation being invoked. + + + +Search text + + + + + +Is the project active + + + + + +Is the project licence reviewed + + + + + +Licenses + + + + + +Created after date + + + + + +Created before date + + + + + +Has a commercial subscription + + + + + +Subscription expires after + + + + + +Subscription expired before + + + + + +Subscription modified after + + + + + +Subscription modified before + + + + + + + + + + + + +

Search through the Registry database for products that match the +query terms. text is a piece of text in the title / summary / +description fields of product.

+

This call eager loads data appropriate for web API; caution may be +needed for other callers.

+ +
+ + + + The name of the operation being invoked. + + + +Search text + + + + + + + + + +
+ + +

Return the latest projects registered in Launchpad.

+

The supplied user determines which objects are visible.

+

If the quantity is not specified or is a value that is not 'None' +then the set of projects returned is limited to that value (the +default quantity is 5). If quantity is 'None' then all projects are +returned. For the web service it is not possible to specify the +quantity, so all projects are returned, latest first.

+ +
+ + + + The name of the operation being invoked. + + + + + + + +
+ + +

Create and return a brand new Product.

+

See IProduct for a description of the parameters.

+ +
+ + + + The name of the operation being invoked. + + + +

Name

+

At least one lowercase letter or number, followed by letters, numbers, dots, hyphens or pluses. Keep this name short; it is used in URLs as shown above.

+ +
+ +
+ + +

Display Name

+

The name of the project as it would appear in a +paragraph.

+ +
+ +
+ + +

Title

+

The project title. Should be just a few words.

+ +
+ +
+ + +

Summary

+

A short paragraph to introduce the project's work.

+ +
+ +
+ + +

Description

+

Details about the project's work, highlights, goals, and how to contribute. Use plain text, paragraphs are preserved and URLs are linked in pages. Don't repeat the Summary.

+ +
+ +
+ + +

Part of

+

Project group. This is an overarching initiative that includes several related projects. For example, the Mozilla Project produces Firefox, Thunderbird and Gecko. This information is used to group those projects in a coherent way. If you make this project part of a group, the group preferences and decisions around bug tracking, translation and security policy will apply to this project.

+ +
+ +
+ + +

Homepage URL

+

The project home page. Please include +the http://

+ +
+ +
+ + +

Screenshots URL

+

The full URL for screenshots of this project, +if available. Please include the http://

+ +
+ +
+ + +

Download URL

+

The full URL where downloads for this project +are located, if available. Please include the http://

+ +
+ +
+ + +

Freshmeat Project

+

The Freshmeat project name for +this project, if it is in freshmeat. [DEPRECATED]

+ +
+ +
+ + +

Wiki URL

+

The full URL of this project's wiki, if it has +one. Please include the http://

+ +
+ +
+ + +

Sourceforge Project

+

The SourceForge project name for +this project, if it is in sourceforge.

+ +
+ +
+ + +

Programming Languages

+

A comma delimited list of programming +languages used for this project.

+ +
+ +
+ + +

Project reviewed

+

Whether or not this project has been reviewed. If you looked at the project and how it uses Launchpad, you reviewed it.

+ +
+ +
+ + +Licences + + + + + +

Description of additional licences

+

Description of licences that do not appear in the list above.

+ +
+ +
+ + +

Registrant

+

This person registered the project in Launchpad.

+ +
+ +
+ + +

Bug Supervisor

+

The Launchpad id of the person or team (preferred) responsible for bug management.

+ +
+ +
+ + +

Driver

+

This person or team will be able to set feature goals for and approve bug targeting or backporting for ANY major series in this project. You might want to leave this blank and just appoint a team for each specific series, rather than having one project team that does it all.

+ +
+ +
+
+
+ + + + + + +
+
+ + + + + +The collection of projects. + + + + + + + + + + +Search through the Registry database for projects that match the +query terms. text is a piece of text in the title / summary / +description fields of project (and possibly product). soyuz, +bazaar, malone etc are hints as to whether the search should +be limited to projects that are active in those Launchpad +applications. + + + + + The name of the operation being invoked. + + + +Search text + + + + + + + + + + + + + + + + +A utility that contain all the questions published in Launchpad. + + + + + + + + + + +

Return the questions from the collection matching search criteria.

+ +++ + + + + + + + + + + +
param search_text:
 A string that is matched against the question +title and description. If None, the search_text is not included as +a filter criteria.
param status:A sequence of QuestionStatus Items. If None or an empty +sequence, the status is not included as a filter criteria.
param language:An ILanguage or a sequence of ILanguage objects to +match against the question's language. If None or an empty +sequence, the language is not included as a filter criteria.
param sort:An attribute of QuestionSort. If None, a default value is +used. When there is a search_text value, the default is to sort by +RELEVANCY, otherwise results are sorted NEWEST_FIRST.
+ +
+ + + + The name of the operation being invoked. + + + +Search text + + + + + +Status + + + + + +Language + + + + + +Sort + + + + + + + + + + + + + + +
+ + +

Return the question with the given id.

+

Return :default: if no such question exists.

+ +
+ + + + The name of the operation being invoked. + + + +The id of the question to get + + + + + + + + + +
+
+ + + + + +Interface representing the set of bases for snaps. + + + + + + + + + + +

Return the ISnapBase with this name.

+ +++ + + + + +
raises NoSuchSnapBase:
 if no base exists with this name.
+ +
+ + + + The name of the operation being invoked. + + + +Base name + + + + + + + + + +
+ + +

Get the default base.

+

This will be used to pick the default distro series for snaps that +do not specify a base.

+ +
+ + + + The name of the operation being invoked. + + + + + + + +
+ + +Create an ISnapBase. + + + + + The name of the operation being invoked. + + + +Name + + + + + +Display name + + + + + +Distro series + + + + + +

Source snap channels for builds

+

A dictionary mapping snap names to channels to use when building snaps that specify this base. The special '_byarch' key may have a mapping of architecture names to mappings of snap names to channels, which if present override the channels declared at the top level when building for those architectures.

+ +
+ +
+ + +

Features supported by this base

+

A dictionary designating the features supported by the base. Key is the name of a feature, value is a boolean indicating whether the feature is supported or not.

+ +
+ +
+ + + + +
+
+ + + + + + +
+ + +

Set the default base.

+

This will be used to pick the default distro series for snaps that +do not specify a base.

+ +++ + + + + +
param snap_base:
 An ISnapBase, or None to unset the default base.
+ +
+ + + + The name of the operation being invoked. + + + +Base + + + + + + +
+
+ + + + + +A utility to create and access snap packages. + + + + + + + + + + +Return the appropriate ISnap for the given objects. + + + + + The name of the operation being invoked. + + + +Owner + + + + + +Snap name + + + + + + + + + + + + +Return all snap packages with the given owner. + + + + + The name of the operation being invoked. + + + +Owner + + + + + + + + + + + + +

Return all snap packages that build from the given URL.

+

This currently only works for packages that build directly from a +URL, rather than being linked to a Bazaar branch or Git repository +hosted in Launchpad.

+ +++ + + + + + + + + +
param url:A URL.
param owner:Only return packages owned by this user.
param visible_by_user:
 If not None, only return packages visible by +this user; otherwise, only return publicly-visible packages.
+ +
+ + + + The name of the operation being invoked. + + + +The URL to search for. + + + + + +Owner + + + + + + + + + +
+ + +

Return all snap packages that build from a URL with this prefix.

+

This currently only works for packages that build directly from a +URL, rather than being linked to a Bazaar branch or Git repository +hosted in Launchpad.

+ +++ + + + + + + + + + +
param url_prefix:
 A URL prefix.
param owner:Only return packages owned by this user.
param visible_by_user:
 If not None, only return packages visible by +this user; otherwise, only return publicly-visible packages.
+ +
+ + + + The name of the operation being invoked. + + + +The URL prefix to search for. + + + + + +Owner + + + + + + + + + +
+ + +

Return all snap packages that build from a URL with any of these +prefixes.

+

This currently only works for packages that build directly from a +URL, rather than being linked to a Bazaar branch or Git repository +hosted in Launchpad.

+ +++ + + + + + + + + + +
param url_prefixes:
 A list of URL prefixes.
param owner:Only return packages owned by this user.
param visible_by_user:
 If not None, only return packages visible by +this user; otherwise, only return publicly-visible packages.
+ +
+ + + + The name of the operation being invoked. + + + +The URL prefixes to search for. + + + + + +Owner + + + + + + + + + +
+ + +

Return all snap packages with the given store package name.

+ +++ + + + + + + + + + +
param store_name:
 A registered store package name.
param owner:Only return packages owned by this user.
param visible_by_user:
 If not None, only return packages visible by +this user; otherwise, only return publicly-visible packages.
+ +
+ + + + The name of the operation being invoked. + + + +The registered store package name to search for. + + + + + +Owner + + + + + + + + + +
+ + +Create an ISnap. + + + + + The name of the operation being invoked. + + + +

Owner

+

The owner of this snap package.

+ +
+ +
+ + +

Distro Series

+

The series for which the snap package should be built. If not set, Launchpad will infer an appropriate series from snapcraft.yaml.

+ +
+ +
+ + +

Snap recipe name

+

The name of the snap build recipe.

+ +
+ +
+ + +

Description

+

A description of the snap package.

+ +
+ +
+ + +

Bazaar branch

+

A Bazaar branch containing a snap/snapcraft.yaml, build-aux/snap/snapcraft.yaml, snapcraft.yaml, or .snapcraft.yaml recipe at the top level.

+ +
+ +
+ + +

Git repository

+

A Git repository with a branch containing a snap/snapcraft.yaml, build-aux/snap/snapcraft.yaml, snapcraft.yaml, or .snapcraft.yaml recipe at the top level.

+ +
+ +
+ + +

Git repository URL

+

The URL of a Git repository with a branch containing a snap/snapcraft.yaml, build-aux/snap/snapcraft.yaml, snapcraft.yaml, or .snapcraft.yaml recipe at the top level.

+ +
+ +
+ + +

Git branch path

+

The path of the Git branch containing a snap/snapcraft.yaml, build-aux/snap/snapcraft.yaml, snapcraft.yaml, or .snapcraft.yaml recipe at the top level.

+ +
+ +
+ + +

Git branch

+

The Git branch containing a snap/snapcraft.yaml, build-aux/snap/snapcraft.yaml, snapcraft.yaml, or .snapcraft.yaml recipe at the top level.

+ +
+ +
+ + +

Automatically build when branch changes

+

Whether this snap package is built automatically when the branch containing its snap/snapcraft.yaml, build-aux/snap/snapcraft.yaml, snapcraft.yaml, or .snapcraft.yaml recipe changes.

+ +
+ +
+ + +

Source archive for automatic builds

+

The archive from which automatic builds of this snap package should be built.

+ +
+ +
+ + +

Pocket for automatic builds

+

The package stream within the source archive and distribution series to use when building the snap package. If the source archive is a PPA, then the PPA's archive dependencies will be used to select the pocket in the distribution's primary archive.

+ +
+ + + + + + +
+ + +

Automatically upload to store

+

Whether builds of this snap package are automatically uploaded to the store.

+ +
+ +
+ + +

Store series

+

The series in which this snap package should be published in the store.

+ +
+ +
+ + +

Registered store package name

+

The registered name of this snap package in the store.

+ +
+ +
+ + +

Store channels

+

Channels to release this snap package to after uploading it to the store. A channel is defined by a combination of an optional track, a risk, and an optional branch, e.g. '2.1/stable/fix-123', '2.1/stable', 'stable/fix-123', or 'stable'.

+ +
+ +
+ + +The project that this Snap is associated with + + + + + +

Information type

+

The type of information contained in this Snap recipe.

+ +
+ + + + + + + +
+ + + + +
+
+ + + + + + +
+
+ + + + + +Interface representing the set of snappy series. + + + + + + + + + + +

Return the ISnappySeries with this name.

+ +++ + + + + +
raises NoSuchSnappySeries:
 if no snappy series exists with this name.
+ +
+ + + + The name of the operation being invoked. + + + +Snappy series name + + + + + + + + + +
+ + +Create an ISnappySeries. + + + + + The name of the operation being invoked. + + + +Name + + + + + +Display name + + + + + +Status + + + + + + + + + + + + + + + + + + + +
+ + + + + +A container for specifications. + + + + + + + + + + +Create a new specification. + + + + + The name of the operation being invoked. + + + +

Name

+

May contain lower-case letters, numbers, and dashes. It will be used in the specification url. Examples: mozilla-type-ahead-find, postgres-smart-serial.

+ +
+ +
+ + +

Title

+

Describe the feature as clearly as possible in up to 70 characters. This title is displayed in every feature list or report.

+ +
+ +
+ + +

Specification URL

+

The URL of the specification. This is usually a wiki page.

+ +
+ +
+ + +

Summary

+

A single-paragraph description of the feature. This will also be displayed in most feature listings.

+ +
+ +
+ + +

Definition Status

+

The current status of the process to define the feature and get approval for the implementation plan.

+ +
+ + + + + + + + + +
+ + +

Assignee

+

The person responsible for implementing the feature.

+ +
+ +
+ + +

Drafter

+

The person responsible for drafting the specification.

+ +
+ +
+ + +

Status Whiteboard

+

Any notes on the status of this spec you would like to make. Your changes will override the current text.

+ +
+ +
+ + +The product or distribution context of this specification. + + + +
+
+ + + + + + +
+
+ + + + + +A tool to create temporary blobs. + + + + + + + + + + +Retrieve a TemporaryBlobStorage by uuid. + + + + + The name of the operation being invoked. + + + +UUID + + + + + + + + + + + + + +A container for translation groups. + + + + + + + + + + +Get a translation group by name. + + + + + The name of the operation being invoked. + + + +Name of the translation group + + + + + + + + + + + + + + + + +A set of files to be imported into Rosetta. + + + + + + + + + + +

Return all entries this import queue has.

+ +++ + + + + + + + + + +
arg target:IPerson, IProduct, IProductSeries, IDistribution, +IDistroSeries or ISourcePackage the import entries are attached to +or None to get all entries available.
arg import_status:
 RosettaImportStatus entry.
arg file_extensions:
 Sequence of filename suffixes to match, usually +'po' or 'pot'.
+

If any of target, status or file_extension are given, the returned +entries are filtered based on those values.

+ +
+ + + + The name of the operation being invoked. + + + +The status of the import. + + + + + + + + + + + + + + + + +
+ + +

Return the first entry of the queue ready to be imported.

+ +++ + + + +
param target:IPerson, IProduct, IProductSeries, IDistribution, +IDistroSeries or ISourcePackage the import entries are attached to +or None to get all entries available.
+ +
+ + + + The name of the operation being invoked. + + + + + + + + + + + +
+ + +

List Product`s and `DistroSeries with pending imports.

+ +++ + + + +
arg status:Filter by RosettaImportStatus.
+

All returned items will implement IHasTranslationImports.

+ +
+ + + + The name of the operation being invoked. + + + +The status of the import. + + + + + + + + + + + + + + + + +
+
+ + + + + + + + +A personal access token for the webservice API. + + + + + + + + + + + + + + + + + + + + + + + + + +Revoke this token. + + + + + + + + + + + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +

Creation date

+

When the token was created.

+ +
+ +
+ + +

Expiry date

+

When the token should expire or was revoked.

+ +
+ +
+ + +

Date last used

+

When the token was last used.

+ +
+ +
+ + +

Description

+

A short description of the token.

+ +
+ +
+ + +

Owner

+

The person who created the token.

+ +
+ +
+ + +

Revoked by

+

The person who revoked the token, if any.

+ +
+ +
+ + +

Scopes

+

A list of scopes granted by the token.

+ +
+ +
+ + +

Target

+

The target for which the token was issued.

+ +
+ +
+
+ + + + +

Description

+

A short description of the token.

+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +An object that can be a target for access tokens. + + + + + + + + + + + + + + + + + + + + + + + + + +

Issue a personal access token for this target.

+

Access tokens can be used to push to repositories over HTTPS. These may +be used in webservice API requests for certain methods in the target's +repositories.

+

They are either non-expiring or with an expiry time given by +date_expires.

+ +++ + + + +
return:The secret for a new personal access token (Launchpad only +records the hash of this secret and not the secret itself, so the +caller must be careful to save this).
+ +
+ + + + + +A short description of the token. + + + + + +A list of scopes to be granted by this token. + + + + + +When the token should expire. + + + + + + +
+
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +ArchiveDependency interface. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The canonical link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +

Target archive

+

The archive that has this dependency.

+ +
+ +
+ + +Component name + + + + + +Instant when the dependency was created. + + + + + +The archive set as a dependency. + + + + + +Pocket + + + + + + + + + + +

Target snap base

+

The snap base that has this dependency.

+ +
+ +
+ + +Archive dependency title. + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Main Archive interface. + + + + + + + + + + + + + + + + + + + + + + + + + +

Return build records in the context it is implemented.

+

It excludes build records generated by Gina (imported from a external +repository), where IBuild.datebuilt is null and IBuild.buildstate +is BuildStatus.FULLYBUILT.

+

The result is simply not filtered if the optional filters are omitted +by call sites.

+ +++ + + + + + + + + + + + + + + + + + +
param build_state:
 optional BuildStatus value for filtering build +records;
param name:optional string for filtering build source package name. +Sub-string matching is allowed via SQL LIKE.
param pocket:optional PackagePublishingPocket value for filtering +build records;
param arch_tag:optional string for filtering build source packages +by their architecture tag;
param user:optional IPerson corresponding to the user performing +the request. It will filter out build records for which the user +have no 'view' permission.
param binary_only:
 optional boolean indicating whether only +BinaryPackageBuild objects should be returned, or more general +PackageBuild objects (which may include, for example, +SourcePackageRecipeBuild objects.
return:a result set containing IPackageBuild records ordered by +descending IPackageBuild.date_finished except when builds are +filtered by BuildStatus.NEEDSBUILD, in this case records +are ordered by descending BuildQueue.lastscore +(dispatching order).
+ +
+ + + + + +Source package name + + + + + +

Build status

+

The status of this build record

+ +
+ + + + + + + + + + + + + +
+ + +

Pocket

+

The pocket into which this entry is published

+ +
+ + + + + + +
+ +
+ + + + +
+ + +Wrapper around checkUpload for the web service API. + + + + + + + + + + +The distro series + + + + + +Source package name + + + + + +Component + + + + + +

Pocket

+

The pocket into which this entry is published

+ +
+ + + + + + +
+ + +Strict component + + + + +
+ +
+ + +

The ArchivePermission records for uploaders to the package set.

+ +++ + + + + + + + + + +
param packageset:
 An IPackageset.
param direct_permissions:
 If True, only consider permissions granted +directly for the package set at hand. Otherwise, include any +uploaders for package sets that include this one.
return:ArchivePermission records for all the uploaders who are +authorized to upload to the named source package set.
+ +
+ + + + + +Package set + + + + + +Ignore package set hierarchy + + + + + + + + + +
+ + +

The ArchivePermission records for the person's package sets.

+ +++ + + + + + +
param person:An IPerson for whom you want to find out which +package sets they have access to.
return:ArchivePermission records for all the package sets that +'person' is allowed to upload to.
+ +
+ + + + + + + + + + + + + +
+ + +

The package set based permissions for a given source and uploader.

+
+
Return the IArchivePermission records that
+
    +
  • apply to this archive
  • +
  • +
    relate to
    +
      +
    • package sets that include the given source package name
    • +
    • the given person
    • +
    +
    +
    +
  • +
+
+
+ +++ + + + + + + + + + + + +
param sourcepackagename:
 the source package name; can be +either a string or a ISourcePackageName.
param person:An IPerson for whom you want to find out which +package sets they have access to.
raises NoSuchSourcePackageName:
 if a source package with the +given name could not be found.
return:ArchivePermission records for the package sets that +include the given source package name and to which the given +person may upload.
+ +
+ + + + + +Source package name + + + + + + + + + + + + + +
+ + +

All package set based permissions for the given source.

+

This method is meant to aid the process of "debugging" package set +based archive permission since It allows the listing of permissions +for the given source package in this archive (irrespective of the +principal).

+ +++ + + + + + + + + + + + + +
param sourcepackagename:
 the source package name; can be +either a string or a ISourcePackageName.
param direct_permissions:
 If set only package sets that directly +include the given source will be considered.
raises NoSuchSourcePackageName:
 if a source package with the +given name could not be found.
return:ArchivePermission records for the package sets that +include the given source package name and apply to the +archive in question.
+ +
+ + + + + +Source package name + + + + + +Ignore package set hierarchy + + + + + + + + + +
+ + +

True if the person is allowed to upload the given source package.

+
+
Return True if there exists a permission that combines
+
    +
  • this archive
  • +
  • a package set that includes the given source package name
  • +
  • the given person or a team they are a member of
  • +
+
+
+

If the source package name is included by any package set with +an explicit permission then only such explicit permissions will +be considered.

+ +++ + + + + + + + + + + + + + + +
param sourcepackagename:
 the source package name; can be +either a string or a ISourcePackageName.
param person:An IPerson for whom you want to find out which +package sets they have access to.
param distroseries:
 The IDistroSeries for which to check +permissions. If none is supplied then currentseries in +the archive's distribution is assumed.
raises NoSuchSourcePackageName:
 if a source package with the +given name could not be found.
return:True if the person is allowed to upload the source package.
+ +
+ + + + + +Source package name + + + + + + + + + +The distro series + + + + + + +
+ + +

Return a dictionary containing the build counters for an archive.

+

This is necessary currently because the IArchive.failed_builds etc. +counters are not in use.

+

The returned dictionary contains the following keys and values:

+
+
    +
  • 'total': total number of builds (includes SUPERSEDED);
  • +
  • 'pending': number of builds in BUILDING or NEEDSBUILD state;
  • +
  • 'failed': number of builds in FAILEDTOBUILD, MANUALDEPWAIT, +CHROOTWAIT and FAILEDTOUPLOAD state;
  • +
  • 'succeeded': number of SUCCESSFULLYBUILT builds.
  • +
  • 'superseded': number of SUPERSEDED builds.
  • +
+
+ +++ + + + + + + + + + + + +
param include_needsbuild:
 Indicates whether to include builds with +the status NEEDSBUILD in the pending and total counts. This is +useful in situations where a build that hasn't started isn't +considered a build by the user.
type include_needsbuild:
 bool
return:a dictionary with the 4 keys specified above.
rtype:dict.
+ +
+ + + + + +Include builds with state NEEDSBUILD + + + + + + +
+ + +

Return a dictionary containing a summary of the build statuses.

+

Only information for sources belonging to the current archive will +be returned. See +IPublishingSet.getBuildStatusSummariesForSourceIdsAndArchive() for +details.

+ +++ + + + + + + + + + +
param source_ids:
 A list of source publishing history record ids.
type source_ids:
 list
return:A dict consisting of the overall status summaries for the +given ids that belong in the archive.
+ +
+ + + + + +A list of source publishing history record ids. + + + + + + +
+ + +

Return the IArchiveDependency object for the given dependency.

+ +++ + + + + + + +
param dependency:
 is an IArchive object.
return:IArchiveDependency or None if a corresponding object +could not be found.
+ +
+ + + + + + + + + + + + + +
+ + +

Return the IArchivePermission records applicable to the person.

+ +++ + + + + + +
param person:An IPerson
return:A list of IArchivePermission records.
+ +
+ + + + + + + + + + + + + +
+ + +

Return IArchivePermission records for the package's uploaders.

+ +++ + + + + + + +
param source_package_name:
 An ISourcePackageName or textual name +for the source package.
return:A list of IArchivePermission records.
+ +
+ + + + + +Source Package Name + + + + + + + + + +
+ + +

Return IArchivePermission records for the component's uploaders.

+ +++ + + + + + + +
param component_name:
 An IComponent or textual name for the +component.
return:A list of IArchivePermission records.
+ +
+ + + + + +Component Name + + + + + + + + + +
+ + +

Return IArchivePermission records for authorized queue admins.

+ +++ + + + + + + +
param component_name:
 An IComponent or textual name for the +component.
return:A list of IArchivePermission records.
+ +
+ + + + + +Component Name + + + + + + + + + +
+ + +

Return IArchivePermission for the person's queue admin +components.

+ +++ + + + + + +
param person:An IPerson.
return:A list of IArchivePermission records.
+ +
+ + + + + + + + + + + + + +
+ + +All ISourcePackagePublishingHistory target to this archive. + + + + + + +Source package name + + + + + +Version + + + + + +

Package Publishing Status

+

The status of this publishing record

+ +
+ + + + + + +
+ + +Distroseries name + + + + + +

Pocket

+

The pocket into which this entry is published

+ +
+ + + + + + +
+ + +

Exact Match

+

Whether or not to filter source names by exact matching.

+ +
+ +
+ + +

Created Since Date

+

Return entries whose date_created is greater than or equal to this date.

+ +
+ +
+ + +Component name + + + + + +

Order by creation date

+

Return newest results first. This is recommended for applications that need to catch up with publications since their last run. If not specified, results are ordered by source package name (lexicographically), then by descending version and then descending ID.

+ +
+ +
+ +
+ + + + +
+ + +

All IBinaryPackagePublishingHistory target to this archive.

+ +++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
param name:binary name filter (exact match or SQL LIKE controlled +by 'exact_match' argument).
param version:binary version filter (always exact match).
param status:PackagePublishingStatus filter, can be a list.
param distroarchseries:
 IDistroArchSeries filter, can be a list.
param pocket:PackagePublishingPocket filter.
param exact_match:
 either or not filter source names by exact +matching.
param created_since_date:
 Only return publications created on or +after this date.
param ordered:Normally publications are ordered by binary package +name and then ID order (creation order). If this parameter is +False then the results will be unordered. This will make the +operation much quicker to return results if you don't care about +ordering.
param order_by_date:
 Order publications by descending creation date +and then by descending ID. This is suitable for applications +that need to catch up with publications since their last run.
param include_removed:
 If True, include publications that have been +removed from disk as well as those that have not.
param only_unpublished:
 If True, only include publications that +have never been published to disk.
param component_name:
 component filter. Only return binaries that are +in this component.
return:A collection containing BinaryPackagePublishingHistory.
+ +
+ + + + + +Binary Package Name + + + + + +Version + + + + + +

Package Publishing Status

+

The status of this publishing record

+ +
+ + + + + + +
+ + +Distro Arch Series + + + + + +

Pocket

+

The pocket into which this entry is published

+ +
+ + + + + + +
+ + +Whether or not to filter binary names by exact matching. + + + + + +

Created Since Date

+

Return entries whose date_created is greater than or equal to this date.

+ +
+ +
+ + +

Ordered

+

Return ordered results by default, but specifying False will return results more quickly.

+ +
+ +
+ + +

Order by creation date

+

Return newest results first. This is recommended for applications that need to catch up with publications since their last run.

+ +
+ +
+ + +Component name + + + + +
+ + + + +
+ + +

Return the pockets that 'person' can upload to this archive.

+ +++ + + + + + +
param person:An IPerson wishing to upload to an archive.
return:A set of PackagePublishingPocket items that 'person' +can upload to.
+ +
+ + + + + + + + + + + + + +
+ + +

Return all IArchivePermission records for this archive.

+ +++ + + + +
return:A list of IArchivePermission records.
+ +
+ + + + + + + + + +
+ + +

Return IArchivePermission records for the pocket's uploaders.

+ +++ + + + + + +
param pocket:A PackagePublishingPocket.
return:A list of IArchivePermission records.
+ +
+ + + + + +Pocket + + + + + + + + + + + + + + +
+ + +

Return IArchivePermission records for authorized queue admins.

+ +++ + + + + + + + + +
param pocket:A PackagePublishingPocket.
param distroseries:
 An optional IDistroSeries.
return:A list of IArchivePermission records.
+ +
+ + + + + +Pocket + + + + + + + + + + +Distro series + + + + + + + + + +
+ + +

Return IArchivePermission for the person's queue admin pockets.

+ +++ + + + + + +
param person:An IPerson.
return:A list of IArchivePermission records.
+ +
+ + + + + + + + + + + + + +
+ + +

Get the public key used to sign this repository.

+

If the repository has a signing key but it cannot be retrieved from +the keyserver, then the response will have an appropriate 4xx or 5xx +HTTP status code. Otherwise, returns the ASCII-armoured public key +material as a text string, or None if the repository has no signing +key.

+ +
+ + + + + + +
+ + +
+
Return a named authorization token for the given name in this
+
archive.
+
+ +++ + + + + + + + + + + +
param name:The identifier string for a token.
param as_dict:Optional boolean, controls whether the return value is +a dictionary or a full object.
return:An ArchiveAuthToken object or a dictionary where the value +of token is the secret and the value of archive_url is the +externally-usable archive URL including basic auth.
raises NotFoundError:
 if no matching token could be found.
+ +
+ + + + + +Authorization token name + + + + + + +
+ + +

Return a subset of active named authorization tokens for this +archive if names is specified, or all active named authorization +tokens for this archive is names is null.

+ +++ + + + + + + + +
param names:An optional list of token names.
param as_dict:Optional boolean, controls whether the return value is +a list of dictionaries or a list of full objects.
return:A list of ArchiveAuthToken objects or a list of dictionaries +where token is the secret and archive_url is the +externally-usable archive URL including basic auth.
+ +
+ + + + + +Authorization token names + + + + + + +
+ + +

Add permission for a person to upload a package to this archive.

+ +++ + + + + + + + + +
param person:An IPerson whom should be given permission.
param source_package_name:
 An ISourcePackageName or textual package +name.
return:An IArchivePermission which is the newly-created +permission.
+ +
+ + + + + + + + + +Source Package Name + + + + + + + + + + + +
+ + +

Add permission for a person to upload to a component.

+ +++ + + + + + + + + + + + +
param person:An IPerson whom should be given permission.
param component:
 An IComponent or textual component name.
return:An IArchivePermission which is the newly-created +permission.
raises InvalidComponent:
 if this archive is a PPA and the component +is not 'main'.
+ +
+ + + + + + + + + +Component Name + + + + + + + + + + + +
+ + +

Add permission for a person to administer a distroseries queue.

+

The supplied person will gain permission to administer the +distroseries queue for packages in the supplied component.

+ +++ + + + + + + + + +
param person:An IPerson whom should be given permission.
param component:
 An IComponent or textual component name.
return:An IArchivePermission which is the newly-created +permission.
+ +
+ + + + + + + + + +Component Name + + + + + + + + + + + +
+ + +

Add a package set based permission for a person.

+ +++ + + + + + + + + + + +
param person:An IPerson for whom you want to add permission.
param packageset:
 An IPackageset.
param explicit:True if the package set in question requires +specialist skills for proper handling.
return:The new ArchivePermission, or the existing one if it +already exists.
+ +
+ + + + + + + + + +Package set + + + + + +Explicit + + + + + + + + + + + +
+ + +

Revoke permission for the person to upload the package.

+ +++ + + + + + + +
param person:An IPerson whose permission should be revoked.
param source_package_name:
 An ISourcePackageName or textual package +name.
+ +
+ + + + + + + + + +Source Package Name + + + + + + +
+ + +

Revoke permission for the person to upload to the component.

+ +++ + + + + + + +
param person:An IPerson whose permission should be revoked.
param component:
 An IComponent or textual component name.
+ +
+ + + + + + + + + +Component Name + + + + + + +
+ + +

Revoke permission for the person to administer distroseries queues.

+

The supplied person will lose permission to administer the +distroseries queue for packages in the supplied component.

+ +++ + + + + + + +
param person:An IPerson whose permission should be revoked.
param component:
 An IComponent or textual component name.
+ +
+ + + + + + + + + +Component Name + + + + + + +
+ + +

Revoke upload permissions for a person.

+ +++ + + + + + + + + +
param person:An IPerson for whom you want to revoke permission.
param packageset:
 An IPackageset.
param explicit:The value of the 'explicit' flag for the permission +to be revoked.
+ +
+ + + + + + + + + +Package set + + + + + +Explicit + + + + + + +
+ + +

Synchronise (copy) named sources into this archive from another.

+

DEPRECATED: syncSource and syncSources are deprecated, and will +be removed entirely in the future. Use the asynchronous +copyPackage method instead, and poll getPublishedSources if you +need to await completion.

+

It will copy the most recent PUBLISHED versions of the named +sources to the destination archive if necessary.

+

This operation will only succeeds when all requested packages +are synchronised between the archives. If any of the requested +copies cannot be performed, the whole operation will fail. There +will be no partial changes of the destination archive.

+

If the source or target distribution has a development series alias, +then it may be used as the source or target distroseries name +respectively; but note that this will always be resolved to the true +development series of that distribution, which may not match the +alias in the respective published archives.

+ +++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
param source_names:
 a list of string names of packages to copy.
param from_archive:
 the source archive from which to copy.
param to_pocket:
 the target pocket (as a string).
param to_series:
 the target distroseries (as a string).
param from_series:
 the source distroseries (as a string).
param include_binaries:
 optional boolean, controls whether or not +the published binaries for each given source should also be +copied along with the source.
param person:the IPerson who requests the sync.
raises NoSuchSourcePackageName:
 if the source name is invalid
raises PocketNotFound:
 if the pocket name is invalid
raises NoSuchDistroSeries:
 if the distro series name is invalid
raises CannotCopy:
 if there is a problem copying.
+ +
+ + + + + +Source package names + + + + + + + + + +Pocket name + + + + + +

Distroseries name

+

The distro series to copy packages into.

+ +
+ +
+ + +

Distroseries name

+

The distro series to copy packages from.

+ +
+ +
+ + +

Include Binaries

+

Whether or not to copy binaries already built for this source

+ +
+ +
+
+
+ +
+ + +

Synchronise (copy) a single named source into this archive.

+

DEPRECATED: syncSource and syncSources are deprecated, and will +be removed entirely in the future. Use the asynchronous +copyPackage method instead, and poll getPublishedSources if you +need to await completion.

+

Copy a specific version of a named source to the destination +archive if necessary.

+

If the source distribution has a development series alias, then it +may be used as the source distroseries name; but note that this will +always be resolved to the true development series of that +distribution, which may not match the alias in the published source +archive.

+ +++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
param source_name:
 a string name of the package to copy.
param version:the version of the package to copy.
param from_archive:
 the source archive from which to copy.
param to_pocket:
 the target pocket (as a string).
param to_series:
 the target distroseries (as a string).
param include_binaries:
 optional boolean, controls whether or not +the published binaries for each given source should also be +copied along with the source.
param person:the IPerson who requests the sync.
raises NoSuchSourcePackageName:
 if the source name is invalid
raises PocketNotFound:
 if the pocket name is invalid
raises NoSuchDistroSeries:
 if the distro series name is invalid
raises CannotCopy:
 if there is a problem copying.
+ +
+ + + + + +Source package name + + + + + +Version + + + + + + + + + +Pocket name + + + + + +Distroseries name + + + + + +

Include Binaries

+

Whether or not to copy binaries already built for this source

+ +
+ +
+
+
+ +
+ + +

Create a new subscription to this archive.

+

Create an ArchiveSubscriber record which allows an IPerson to +access a private repository.

+ +++ + + + + + + + + + + + + + + + +
param subscriber:
 An IPerson who is allowed to access the +repository for this archive.
param registrant:
 An IPerson who created this subscription.
param date_expires:
 When the subscription should expire; None if +it should not expire (default).
param description:
 An option textual description of the subscription +being created.
return:The IArchiveSubscriber that was created.
+ +
+ + + + + +

Subscriber

+

The person who is subscribed.

+ +
+ +
+ + +

Date of Expiration

+

The timestamp when the subscription will expire.

+ +
+ +
+ + +

Description

+

Free text describing this subscription.

+ +
+ +
+
+
+ + + + + + +
+ + +

Add the processor to the set of enabled restricted processors.

+

DEPRECATED. Use setProcessors instead.

+ +++ + + + + +
param processor:
 is an IProcessor object.
+ +
+ + + + + + + + + + +
+ + +Set the architectures on which the archive can build. + + + + + + + + + + + + + + +

Copy a single named source into this archive.

+

Asynchronously copy a specific version of a named source to the +destination archive if necessary. Calls to this method will return +immediately if the copy passes basic security checks and the copy +will happen sometime later with full checking.

+

If the source or target distribution has a development series alias, +then it may be used as the source or target distroseries name +respectively; but note that this will always be resolved to the true +development series of that distribution, which may not match the +alias in the respective published archives.

+ +++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
param source_name:
 a string name of the package to copy.
param version:the version of the package to copy.
param from_archive:
 the source archive from which to copy.
param to_pocket:
 the target pocket (as a string).
param to_series:
 the target distroseries (as a string).
param include_binaries:
 optional boolean, controls whether or not +the published binaries for each given source should also be +copied along with the source.
param person:the IPerson who requests the sync.
param sponsored:
 the IPerson who is being sponsored. Specifying +this will ensure that the person's email address is used as the +"From:" on the announcement email and will also be recorded as +the creator of the new source publication.
param unembargo:
 if True, allow copying restricted files from a +private archive to a public archive, and re-upload them to the +public librarian when doing so.
param auto_approve:
 if True and the IPerson requesting the sync +has queue admin permissions on the target, accept the copy +immediately rather than setting it to unapproved.
param silent:Suppress any emails that the copy would generate. +Only usable with queue admin permissions on the target.
param from_pocket:
 the source pocket (as a string). If omitted, +copy from any pocket with a matching version.
param from_series:
 the source distroseries (as a string). If +omitted, copy from any series with a matching version.
param phased_update_percentage:
 the phased update percentage to +apply to the copied publication.
param move:if True, delete the source publication after copying it +to the destination.
raises NoSuchSourcePackageName:
 if the source name is invalid
raises PocketNotFound:
 if the pocket name is invalid
raises NoSuchDistroSeries:
 if the distro series name is invalid
raises CannotCopy:
 if there is a problem copying.
+ +
+ + + + + +Source package name + + + + + +Version + + + + + + + + + +Target pocket name + + + + + +Target distroseries name + + + + + +

Include Binaries

+

Whether or not to copy binaries already built for this source

+ +
+ +
+ + +

Sponsored Person

+

The person who is being sponsored for this copy.

+ +
+ +
+ + +Unembargo restricted files + + + + + +

Automatic approval

+

Automatically approve this copy (queue admins only).

+ +
+ +
+ + +

Silent

+

Don't notify anyone about this copy. For use by queue admins only.

+ +
+ +
+ + +Source pocket name + + + + + +Source distroseries name + + + + + +

Phased update percentage

+

The percentage of users for whom this package should be recommended, or None to publish the update for everyone.

+ +
+ +
+ + +

Move

+

If true, delete the source publication after copying it to the destination.

+ +
+ +
+
+
+ +
+ + +

Copy multiple named sources into this archive from another.

+

Asynchronously copy the most recent PUBLISHED versions of the named +sources to the destination archive if necessary. Calls to this +method will return immediately if the copy passes basic security +checks and the copy will happen sometime later with full checking.

+

Partial changes of the destination archive can happen because each +source is copied in its own transaction.

+

If the source or target distribution has a development series alias, +then it may be used as the source or target distroseries name +respectively; but note that this will always be resolved to the true +development series of that distribution, which may not match the +alias in the respective published archives.

+ +++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
param source_names:
 a list of string names of packages to copy.
param from_archive:
 the source archive from which to copy.
param to_pocket:
 the target pocket (as a string).
param to_series:
 the target distroseries (as a string).
param from_series:
 the source distroseries (as a string).
param include_binaries:
 optional boolean, controls whether or not +the published binaries for each given source should also be +copied along with the source.
param person:the IPerson who requests the sync.
param sponsored:
 the IPerson who is being sponsored. Specifying +this will ensure that the person's email address is used as the +"From:" on the announcement email and will also be recorded as +the creator of the new source publication.
param unembargo:
 if True, allow copying restricted files from a +private archive to a public archive, and re-upload them to the +public librarian when doing so.
param auto_approve:
 if True and the IPerson requesting the sync +has queue admin permissions on the target, accept the copies +immediately rather than setting it to unapproved.
param silent:Suppress any emails that the copy would generate. +Only usable with queue admin permissions on the target.
raises NoSuchSourcePackageName:
 if the source name is invalid
raises PocketNotFound:
 if the pocket name is invalid
raises NoSuchDistroSeries:
 if the distro series name is invalid
raises CannotCopy:
 if there is a problem copying.
+ +
+ + + + + +Source package names + + + + + + + + + +Pocket name + + + + + +

Distroseries name

+

The distro series to copy packages into.

+ +
+ +
+ + +

Distroseries name

+

The distro series to copy packages from.

+ +
+ +
+ + +

Include Binaries

+

Whether or not to copy binaries already built for this source

+ +
+ +
+ + +

Sponsored Person

+

The person who is being sponsored for this copy.

+ +
+ +
+ + +Unembargo restricted files + + + + + +

Automatic approval

+

Automatically approve this copy (queue admins only).

+ +
+ +
+ + +

Silent

+

Don't notify anyone about this copy. For use by queue admins only.

+ +
+ +
+
+
+ +
+ + +Upload the output of a CI build to this archive. + + + + + + + + + + +Target distroseries name + + + + + +Target pocket name + + + + + +Target channel + + + + + + + + + +

Add permission for a person to upload to a pocket.

+ +++ + + + + + + + + + + + + + +
param person:An IPerson whom should be given permission.
param pocket:A PackagePublishingPocket.
return:An IArchivePermission which is the newly-created +permission.
raises InvalidPocketForPartnerArchive:
 if this archive is a partner +archive and the pocket is not RELEASE or PROPOSED.
raises InvalidPocketForPPA:
 if this archive is a PPA and the pocket +is not RELEASE.
+ +
+ + + + + + + + + +Pocket + + + + + + + + + + + + + + + + +
+ + +

Add permission for a person to administer a distroseries queue.

+

The supplied person will gain permission to administer the +distroseries queue for packages in the supplied series and pocket.

+ +++ + + + + + + + + + + +
param person:An IPerson whom should be given permission.
param pocket:A PackagePublishingPocket.
param distroseries:
 An optional IDistroSeries.
return:An IArchivePermission which is the newly-created +permission.
+ +
+ + + + + + + + + +Pocket + + + + + + + + + + +Distro series + + + + + + + + + + + +
+ + +

Revoke permission for the person to upload to the pocket.

+ +++ + + + + + + + + +
param person:An IPerson whose permission should be revoked.
param distroseries:
 An IDistroSeries.
param pocket:A PackagePublishingPocket.
+ +
+ + + + + + + + + +Pocket + + + + + + + + + + + +
+ + +

Revoke permission for the person to administer distroseries queues.

+

The supplied person will lose permission to administer the +distroseries queue for packages in the supplied series and pocket.

+ +++ + + + + + + + + +
param person:An IPerson whose permission should be revoked.
param pocket:A PackagePublishingPocket.
param distroseries:
 An optional IDistroSeries.
+ +
+ + + + + + + + + +Pocket + + + + + + + + + + +Distro series + + + + + + +
+ + +

Record an archive dependency record for the context archive.

+ +++ + + + + + + + + + + + + + +
param dependency:
 is an IArchive object.
param pocket:is an PackagePublishingPocket enum.
param component:
 is the name of a component. If not given, +the archive dependency will be tied to the component used +for a corresponding source in primary archive.
raise:ArchiveDependencyError if given 'dependency' does not fit +the context archive.
return:a IArchiveDependency object targeted to the context +IArchive requiring 'dependency' IArchive.
+ +
+ + + + + + + + + +

Pocket

+

The pocket into which this entry is published

+ +
+ + + + + + +
+ + +Component + + + +
+
+ + + + + + +
+ + +

Remove the IArchiveDependency record for the given dependency.

+ +++ + + + + +
param dependency:
 is an IArchive object.
+ +
+ + + + + + + + + + +
+ + +

Create a new named authorization token.

+ +++ + + + + + + + + + +
param name:An identifier string for this token.
param token:Optional unicode text to use as the token. One will be +generated if not given.
param as_dict:Optional boolean, controls whether the return value is +a dictionary or a full object.
return:An ArchiveAuthToken object or a dictionary where the value +of token is the secret and the value of archive_url is the +externally-usable archive URL including basic auth.
+ +
+ + + + + +Authorization token name + + + + + +Optional secret for this named token + + + + + + +
+ + +

Create named authorization tokens in bulk.

+ +++ + + + + + + + +
param names:A list of token names.
param as_dict:Optional boolean, controls whether the return value is +a list of dictionaries or a list of full objects.
return:A list of ArchiveAuthToken objects or a dictionary of +{name: {token, archive_url} where name is a token name, +token is the secret and archive_url is the externally-usable +archive URL including basic auth.
+ +
+ + + + + +Authorization token names + + + + + + +
+ + +

Deactivate a named authorization token.

+ +++ + + + + + + +
param name:The identifier string for a token.
raises NotFoundError:
 if no matching token could be found.
+ +
+ + + + + +Authorization token name + + + + + + +
+ + +

Deactivate named authorization tokens in bulk.

+ +++ + + + +
param names:A list of token names.
+ +
+ + + + + +Authorization token names + + + + + + +
+ + +

Remove a copy notification that's displayed on the +packages page.

+

Copy notifications are shown on the +packages page when a +PlainPackageCopyJob is in progress or failed. Calling this +method will delete failed jobs so they no longer appear on the +page.

+

You need to have upload privileges on the PPA to use this.

+ +++ + + + +
param job_id:The ID of the PlainPackageCopyJob to be removed.
+ +
+ + + + + + + + + + +
+ + +

Mark a suite as dirty in this archive.

+

The next publisher run will publish this suite regardless of whether +it has any pending publications.

+ +++ + + + + + + +
param distroseries:
 An IDistroSeries.
param pocket:A PackagePublishingPocket.
+ +
+ + + + + +Distro series + + + + + +Pocket + + + + + + + + + + + +
+
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +

Authorized size

+

Maximum size, in MiB, allowed for the archive.

+ +
+ +
+ + +

Build debug symbols

+

Create debug symbol packages for builds in the archive.

+ +
+ +
+ + +Archive dependencies recorded for this archive. + + + + + +

Description

+

A short description of the archive. URLs are allowed and will be rendered as links.

+ +
+ +
+ + +

Display name

+

A short title for the archive.

+ +
+ +
+ + +The distribution that uses or is used by this archive. + + + + + +

Enabled restricted processors

+

DEPRECATED. Use processors instead.

+ +
+ +
+ + +

External dependencies

+

Newline-separated list of repositories to be used to retrieve any external build-dependencies when building packages in the archive, in the format: +deb http[s]://[user:pass@]<host>[/path] %(series)s[-pocket] [components] +The series variable is replaced with the series name of the context build. +NOTE: This is for migration of OEM PPAs only!

+ +
+ +
+ + +

Name

+

At least one lowercase letter or number, followed by letters, numbers, dots, hyphens or pluses. Keep this name short; it is used in URLs.

+ +
+ +
+ + +

Owner

+

The archive owner.

+ +
+ +
+ + +

Permit uploads to obsolete series

+

Allow uploads targeted to obsolete series.

+ +
+ +
+ + +

Private

+

Restrict access to the archive to its owner and subscribers. This can only be changed if the archive has never had any sources published.

+ +
+ +
+ + +

Processors

+

The architectures on which the archive can build.

+ +
+ +
+ + +

Publishing enabled

+

Whether or not to update the apt repository. If disabled, nothing will be published. If the archive is private then additionally no builds will be dispatched.

+ +
+ +
+ + +

Publish debug symbols

+

Publish debug symbol packages in the apt repository.

+ +
+ +
+ + +Publishing method + + + + + + + +

Reference

+

A string to uniquely identify the archive.

+ +
+ +
+ + +

Relative build score

+

A delta to apply to all build scores for the archive. Builds with a higher score will build sooner.

+ +
+ +
+ + +Repository format + + + + + + + + + + +

Require virtualized builders

+

Only build the archive's packages on virtual builders.

+ +
+ +
+ + +

Archive signing key fingerprint

+

A OpenPGP signing key fingerprint (40 chars) for this PPA or None if there is no signing key available.

+ +
+ +
+ + +Status of archive. + + + + + +

Suppress subscription notifications

+

Whether subscribers to private PPAs get emails about their subscriptions. Has no effect on a public PPA.

+ +
+ +
+
+ + + + +

Authorized size

+

Maximum size, in MiB, allowed for the archive.

+ +
+ +
+ + +

Build debug symbols

+

Create debug symbol packages for builds in the archive.

+ +
+ +
+ + +

Description

+

A short description of the archive. URLs are allowed and will be rendered as links.

+ +
+ +
+ + +

Display name

+

A short title for the archive.

+ +
+ +
+ + +The distribution that uses or is used by this archive. + + + + + +

External dependencies

+

Newline-separated list of repositories to be used to retrieve any external build-dependencies when building packages in the archive, in the format: +deb http[s]://[user:pass@]<host>[/path] %(series)s[-pocket] [components] +The series variable is replaced with the series name of the context build. +NOTE: This is for migration of OEM PPAs only!

+ +
+ +
+ + +

Name

+

At least one lowercase letter or number, followed by letters, numbers, dots, hyphens or pluses. Keep this name short; it is used in URLs.

+ +
+ +
+ + +

Owner

+

The archive owner.

+ +
+ +
+ + +

Permit uploads to obsolete series

+

Allow uploads targeted to obsolete series.

+ +
+ +
+ + +

Private

+

Restrict access to the archive to its owner and subscribers. This can only be changed if the archive has never had any sources published.

+ +
+ +
+ + +

Publishing enabled

+

Whether or not to update the apt repository. If disabled, nothing will be published. If the archive is private then additionally no builds will be dispatched.

+ +
+ +
+ + +

Publish debug symbols

+

Publish debug symbol packages in the apt repository.

+ +
+ +
+ + +Publishing method + + + + + + + +

Relative build score

+

A delta to apply to all build scores for the archive. Builds with a higher score will build sooner.

+ +
+ +
+ + +Repository format + + + + + + + + + + +

Require virtualized builders

+

Only build the archive's packages on virtual builders.

+ +
+ +
+ + +

Archive signing key fingerprint

+

A OpenPGP signing key fingerprint (40 chars) for this PPA or None if there is no signing key available.

+ +
+ +
+ + +

Suppress subscription notifications

+

Whether subscribers to private PPAs get emails about their subscriptions. Has no effect on a public PPA.

+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +The interface for ArchivePermission. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The canonical link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +

Archive

+

The archive that this permission is for.

+ +
+ +
+ + +Component Name + + + + + +

Date Created

+

The timestamp when the permission was created.

+ +
+ +
+ + +The name of the distro series associated with the package set. + + + + + +

Distro series

+

The distro series that this permission is for (only for pocket permissions).

+ +
+ +
+ + +

Explicit

+

Set this flag for package sets with high-profile packages requiring specialist skills for proper handling.

+ +
+ +
+ + +Package set name + + + + + +The permission type being granted. + + + + + +

Person

+

The person or team being granted the permission.

+ +
+ +
+ + +

Pocket

+

The pocket that this permission is for.

+ +
+ + + + + + +
+ + +Source Package Name + + + +
+ + + + +

Archive

+

The archive that this permission is for.

+ +
+ +
+ + +Component Name + + + + + +

Date Created

+

The timestamp when the permission was created.

+ +
+ +
+ + +The name of the distro series associated with the package set. + + + + + +

Distro series

+

The distro series that this permission is for (only for pocket permissions).

+ +
+ +
+ + +

Explicit

+

Set this flag for package sets with high-profile packages requiring specialist skills for proper handling.

+ +
+ +
+ + +Package set name + + + + + +The permission type being granted. + + + + + +

Person

+

The person or team being granted the permission.

+ +
+ +
+ + +

Pocket

+

The pocket that this permission is for.

+ +
+ + + + + + +
+ + +Source Package Name + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +An interface for archive subscribers. + + + + + + + + + + + + + + + + + + + + + + + + + +

Cancel a subscription.

+ +++ + + + + +
param cancelled_by:
 An IPerson who is cancelling the subscription.
+

Sets cancelled_by to the supplied person and date_cancelled to +the current date/time.

+ +
+ + + + + + +
+
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +

Archive

+

The archive for this subscription.

+ +
+ +
+ + +

Date Created

+

The timestamp when the subscription was created.

+ +
+ +
+ + +

Date of Expiration

+

The timestamp when the subscription will expire.

+ +
+ +
+ + +

Description

+

Free text describing this subscription.

+ +
+ +
+ + +

Registrant

+

The person who registered this subscription.

+ +
+ +
+ + +

Status

+

The status of this subscription.

+ +
+ + + + +
+ + +

Subscriber

+

The person who is subscribed.

+ +
+ +
+
+ + + + +

Date of Expiration

+

The timestamp when the subscription will expire.

+ +
+ +
+ + +

Description

+

Free text describing this subscription.

+ +
+ +
+ + +

Status

+

The status of this subscription.

+ +
+ + + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +A Build interface + + + + + + + + + + + + + + + + + + + + + + + + + +

The latest source publication corresponding to this build.

+

Unlike current_source_publication, this returns publications even if +they are no longer active.

+ +++ + + + +
return:An ISourcePackagePublishingHistory, or None if no +corresponding source publication can be located (which is a bug, +but is true for some old production builds).
+ +
+ + + + + + + + + +
+ + +Change the build's score. + + + + + + +Score + + + + + + + + + +

Restore the build record to its initial state.

+

Build record loses its history, is moved to NEEDSBUILD and a new +non-scored BuildQueue entry is created for it.

+ +
+ + + + + + +
+ + +

Cancel the build if it is either pending or in progress.

+

Check the can_be_cancelled property prior to calling this method to +find out if cancelling the build is possible.

+

If the build is in progress, it is marked as CANCELLING until the +buildd manager terminates the build and marks it CANCELLED. If the +build is not in progress, it is marked CANCELLED immediately and is +removed from the build queue.

+

If the build is not in a cancellable state, this method is a no-op.

+ +
+ + + + + + +
+
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +Architecture tag + + + + + +

Archive

+

The Archive context for this build.

+ +
+ +
+ + +

Build Log URL

+

A URL for the build log. None if there is no log available.

+ +
+ +
+ + +

Builder

+

The builder assigned to this job.

+ +
+ +
+ + +

buildinfo file URL

+

The URL for the .buildinfo file for this build.

+ +
+ +
+ + +

Status

+

The current status of the job.

+ +
+ + + + + + + + + + + + + +
+ + +

Can be cancelled

+

Whether this build record can be cancelled.

+ +
+ +
+ + +

Can be rescored

+

Whether this build record can be rescored manually.

+ +
+ +
+ + +

Can be retried

+

Whether this build record can be retried.

+ +
+ +
+ + +

Changes file URL

+

The URL for the changes file for this build. Will be None if the build was imported by Gina.

+ +
+ +
+ + +

Source publication

+

The current source publication for this build.

+ +
+ +
+ + +

Date finished

+

The actual build start time. Set when the build is dispatched the first time and not changed in subsequent build attempts.

+ +
+ +
+ + +

Date started

+

The timestamp when the build farm job was started.

+ +
+ +
+ + +

Date finished

+

The timestamp when the build farm job was finished.

+ +
+ +
+ + +

Date created

+

The timestamp when the build farm job was created.

+ +
+ +
+ + +

Dependencies

+

Debian-like dependency line that must be satisfied before attempting to build this request.

+ +
+ +
+ + +

Distribution

+

Shortcut for its distribution.

+ +
+ +
+ + +

Duration

+

Duration interval, calculated when the result gets collected.

+ +
+ +
+ + +

External dependencies

+

Newline-separated list of repositories to be used to retrieve any external build-dependencies when performing this build, in the format: +deb http[s]://[user:pass@]<host>[/path] series[-pocket] [components] +This is intended for bootstrapping build-dependency loops.

+ +
+ +
+ + +

Pocket

+

The build targeted pocket.

+ +
+ + + + + + +
+ + +Score of the related job (if any) + + + + + +Source package name + + + + + +Source package version + + + + + +Title + + + + + +

Upload Log URL

+

A URL for failed upload logs.Will be None if there was no failure.

+ +
+ +
+
+ + + + +Architecture tag + + + + + +

Build Log URL

+

A URL for the build log. None if there is no log available.

+ +
+ +
+ + +

Status

+

The current status of the job.

+ +
+ + + + + + + + + + + + + +
+ + +

Dependencies

+

Debian-like dependency line that must be satisfied before attempting to build this request.

+ +
+ +
+ + +

Distribution

+

Shortcut for its distribution.

+ +
+ +
+ + +

External dependencies

+

Newline-separated list of repositories to be used to retrieve any external build-dependencies when performing this build, in the format: +deb http[s]://[user:pass@]<host>[/path] series[-pocket] [components] +This is intended for bootstrapping build-dependency loops.

+ +
+ +
+ + +

Pocket

+

The build targeted pocket.

+ +
+ + + + + + +
+ + +Title + + + + + +

Upload Log URL

+

A URL for failed upload logs.Will be None if there was no failure.

+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +A binary package publishing record. + + + + + + + + + + + + + + + + + + + + + + + + + +

Get the download count of this binary package in this archive.

+

This is currently only meaningful for PPAs.

+ +
+ + + + + + +
+ + +

Get detailed download counts for this binary.

+ +++ + + + + + + +
param start_date:
 The optional first date to return.
param end_date:The optional last date to return.
+ +
+ + + + + +Start date + + + + + +End date + + + + + + + + + +
+ + +

Get the daily download counts for this binary.

+ +++ + + + + + + +
param start_date:
 The optional first date to return.
param end_date:The optional last date to return.
+ +
+ + + + + +Start date + + + + + +End date + + + + + + +
+ + +

URLs for this binary publication's binary files.

+ +++ + + + + + + +
param include_meta:
 Return a list of dicts with keys url, size, +sha1, and sha256 for each URL instead of a simple list.
return:A collection of URLs for this binary.
+ +
+ + + + + +Include Metadata + + + + + + +
+ + +

Delete this source and its binaries.

+ +++ + + + + + + + +
param removed_by:
 IPerson responsible for the removal.
param removal_comment:
 optional text describing the removal reason.
+ +
+ + + + + +Removal comment + + + + + + +
+ + +

Change the component/section/priority/phase of this publication.

+

It is changed only if the argument is not None.

+

Passing new_phased_update_percentage=100 has the effect of setting +the phased update percentage to None (i.e. recommended for all +users).

+

Return the overridden publishing record, a +IBinaryPackagePublishingHistory.

+ +
+ + + + + +The new component name. + + + + + +The new section name. + + + + + +The new priority name. + + + + + +The new phased update percentage. + + + + + + + + + +
+
+ + + + + The canonical link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +Architecture Specific + + + + + +

Archive

+

The context archive for this publication.

+ +
+ +
+ + +Binary Package Name + + + + + +Binary Package Version + + + + + +

Build

+

The build that produced this binary package.

+ +
+ +
+ + +Component Name + + + + + +Original archive ID where this package was copied from. + + + + + +

Publication Creator

+

The IPerson who created this publication.

+ +
+ +
+ + +

Date Created

+

The date on which this record was created

+ +
+ +
+ + +

Date Made Pending

+

The date on which this record was set as pending removal

+ +
+ +
+ + +

Date Published

+

The date on which this record was published

+ +
+ +
+ + +

Date Removed

+

The date on which this record was removed from the published set

+ +
+ +
+ + +

Date Superseded

+

The date on which this record was marked superseded

+ +
+ +
+ + +

Display Name

+

Text representation of the current record.

+ +
+ +
+ + +

Distro Arch Series

+

The distroarchseries being published into

+ +
+ +
+ + +

Debug Package

+

Is this a debug package publication?

+ +
+ +
+ + +The percentage of users for whom this package should be recommended, or None to publish the update for everyone + + + + + +

Pocket

+

The pocket into which this entry is published

+ +
+ + + + + + +
+ + +Priority Name + + + + + +

Removal Comment

+

Reason why this publication is going to be removed.

+ +
+ +
+ + +

Removed By

+

The Person responsible for the removal

+ +
+ +
+ + +

Scheduled Deletion Date

+

The date on which this record is scheduled for deletion

+ +
+ +
+ + +Section Name + + + + + +

Source Package Name

+

The source package name that built this binary.

+ +
+ +
+ + +

Source Package Version

+

The source package version that built this binary.

+ +
+ +
+ + +

Status

+

The status of this publishing record

+ +
+ + + + + + +
+
+ + + + +

Date Created

+

The date on which this record was created

+ +
+ +
+ + +

Date Made Pending

+

The date on which this record was set as pending removal

+ +
+ +
+ + +

Date Published

+

The date on which this record was published

+ +
+ +
+ + +

Date Removed

+

The date on which this record was removed from the published set

+ +
+ +
+ + +

Date Superseded

+

The date on which this record was marked superseded

+ +
+ +
+ + +

Display Name

+

Text representation of the current record.

+ +
+ +
+ + +

Distro Arch Series

+

The distroarchseries being published into

+ +
+ +
+ + +

Removal Comment

+

Reason why this publication is going to be removed.

+ +
+ +
+ + +

Removed By

+

The Person responsible for the removal

+ +
+ +
+ + +

Scheduled Deletion Date

+

The date on which this record is scheduled for deletion

+ +
+ +
+ + +

Status

+

The status of this publishing record

+ +
+ + + + + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Daily download count of a binary package release in an archive. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +Archive + + + + + +Binary package name + + + + + +Binary package version + + + + + +Number of downloads + + + + + +Country + + + + + +Day of the downloads + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +A Bazaar branch. + + + + + + + + + + + + + + + + + + + + + + + + + +Return matching BranchMergeProposals. + + + + + + +A list of merge proposal statuses to filter by. + + + + + + + + + + + + + + + + +

Return a public URL for the branch using the given protocol.

+ +++ + + + +
param scheme:a protocol name accepted by the public +code-hosting API. (As a legacy issue, 'sftp' is also +accepted).
+ +
+ + + + + +URL scheme + + + + + + +
+ + +

Return true if the reviewer is a trusted reviewer.

+

The reviewer is trusted if they are either own the branch, or are in +the team that owns the branch, or they are in the review team for the +branch.

+ +
+ + + + + +A person for which the reviewer status is in question. + + + + + + +
+ + +

Can this branch be deleted in its current state.

+

A branch is considered deletable if it has no revisions and is not +linked to any bugs, specs, productseries, or code imports.

+ +
+ + + + + + +
+ + +Return the BranchSubscription for this person. + + + + + + +The person to search for + + + + + + + + + + + + +Create a new webhook. + + + + + + +Delivery URL + + + + + +

Active

+

Deliver details of subscribed events.

+ +
+ +
+ + +Event types + + + + + +

Secret

+

An optional string used to sign delivery bodies with HMAC-SHA1 in the X-Hub-Signature header. This must be less than 200 bytes long.

+ +
+ +
+
+
+ + + + + + +
+ + +Set the owner of the branch to be new_owner. + + + + + + +The new owner of the branch. + + + + + + + + + +

Set the target of the branch to be project or source_package.

+

Only one of project or source_package can be set, and if neither +is set, the branch gets moved into the junk namespace of the branch +owner.

+ +++ + + + +
raise:BranchTargetError if both project and source_package are +set, or if either the project or source_package fail to be +adapted to an IBranchTarget.
+ +
+ + + + + +The project the branch belongs to. + + + + + +The source package the branch belongs to. + + + + + + +
+ + +

Link a bug to this branch.

+ +++ + + + + + + +
param bug:IBug to link.
param registrant:
 IPerson linking the bug.
+ +
+ + + + + + + + + + +
+ + +

Unlink a bug to this branch.

+ +++ + + + + + +
param bug:IBug to unlink.
param user:IPerson unlinking the bug.
+ +
+ + + + + + + + + + +
+ + +

Link an ISpecification to a branch.

+ +++ + + + + + + +
param spec:ISpecification to link.
param registrant:
 IPerson unlinking the spec.
+ +
+ + + + + + + + + + +
+ + +

Unlink an ISpecification to a branch.

+ +++ + + + + + +
param spec:ISpecification to unlink.
param user:IPerson unlinking the spec.
+ +
+ + + + + + + + + + +
+ + +

Create a new BranchMergeProposal with this branch as the source.

+

Both the target_branch and the prerequisite_branch, if it is there, +must be branches with the same target as the source branch.

+

Personal branches (a.k.a. junk branches) cannot specify landing +targets.

+ +
+ + + + + + + + + + + + + +

Needs review

+

If True the proposal needs review.Otherwise, it will be work in progress.

+ +
+ +
+ + +

Initial comment

+

Registrant's initial description of proposal.

+ +
+ +
+ + +

Commit message

+

Message to use when committing this merge.

+ +
+ +
+ + + + + + + + +
+
+ + + + + + +
+ + +

Subscribe this person to the branch.

+ +++ + + + + + + + + + + + + + + + + + +
param person:The Person to subscribe.
param notification_level:
 The kinds of branch changes that cause +notification.
param max_diff_lines:
 The maximum number of lines of diff that may +appear in a notification.
param code_review_level:
 The kinds of code review activity that cause +notification.
param subscribed_by:
 The person who is subscribing the subscriber. +Most often the subscriber themselves.
return:new or existing BranchSubscription.
+ +
+ + + + + +The person to subscribe. + + + + + +The level of notification to subscribe to. + + + + + + + + + +The max number of lines for diff email. + + + + + + + + + + +The level of code review notification emails. + + + + + + + + + + + + +
+ + +

Remove the person's subscription to this branch.

+ +++ + + + + + + +
param person:The person or team to unsubscribe from the branch.
param unsubscribed_by:
 The person doing the unsubscribing.
+ +
+ + + + + +The person to unsubscribe + + + + + + +
+ + +Request that this branch be mirrored on the next run of the branch +puller. + + + + + + + + + + +

Set the information type for this branch.

+ +++ + + + + + + + + + +
param information_type:
 The InformationType to transition to.
param who:The IPerson who is making the change.
param verify_policy:
 Check if the new information type complies +with the IBranchNamespacePolicy.
+ +
+ + + + + +

Information Type

+

The type of information contained in this branch.

+ +
+ + + + + + + +
+
+
+ +
+ + +Reset this branch's scan data and optionally request a scan. + + + + + + +Scan the branch after resetting its scan data. + + + + + + + + + +

Reset this branch's scan data and request a rescan.

+

A convenience function wrapper around unscan().

+ +
+ + + + + + +
+
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +Branch Format + + + + + + + + + + + + + + + +Branch Type + + + + + + + + + +

Bazaar Identity

+

The bzr branch path as accessed by Launchpad. If the branch is associated with a product as the primary development focus, then the result should be lp:product. If the branch is related to a series, then lp:product/series. Otherwise the result is lp:~user/product/branch-name.

+ +
+ +
+ + +The associated CodeImport, if any. + + + + + +Control Directory + + + + + + + + + + + +Date Created + + + + + +Date Last Modified + + + + + +

Dependent Branches

+

A collection of the merge proposals that are dependent on this branch.

+ +
+ +
+ + +

Description

+

A short description of the changes in this branch.

+ +
+ +
+ + +

Display name

+

The branch unique_name.

+ +
+ +
+ + +

Keep branch confidential

+

Make this branch visible only to its subscribers.

+ +
+ +
+ + +

Information Type

+

The type of information contained in this branch.

+ +
+ + + + + + + +
+ + +

Landing Candidates

+

A collection of the merge proposals where this branch is the target branch.

+ +
+ +
+ + +

Landing Targets

+

A collection of the merge proposals where this branch is the source branch.

+ +
+ +
+ + +Last time a mirror of this branch was attempted. + + + + + +Last time this branch was successfully mirrored. + + + + + +Last time this branch was successfully scanned. + + + + + +

Last scanned revision ID

+

The head revision ID of the branch when last successfully scanned.

+ +
+ +
+ + +Status + + + + + + + + + + +The bugs linked to this branch. + + + + + +The last message we got when mirroring this branch. + + + + + +

Name

+

Keep very short, unique, and descriptive, because it will be used in URLs. Examples: main, devel, release-1.0, gnome-vfs.

+ +
+ +
+ + +

Owner

+

Either yourself or an exclusive team you are a member of. This controls who can modify the branch.

+ +
+ +
+ + +

Branch is confidential

+

This branch is visible only to its subscribers.

+ +
+ +
+ + +

Project

+

The project this branch belongs to.

+ +
+ +
+ + +All recipes associated with the object. + + + + + +The user that registered the branch. + + + + + +Repository Format + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Review Team

+

The reviewer of a branch is the person or exclusive team that is responsible for reviewing proposals and merging into this branch.

+ +
+ +
+ + +

Revision count

+

The revision number of the tip of the branch.

+ +
+ +
+ + +The ISourcePackage that this branch belongs to. None if not a package branch. + + + + + +Specification linked to this branch. + + + + + +Persons subscribed to this branch. + + + + + +BranchSubscriptions associated to this branch. + + + + + +

Unique name

+

Unique name of the branch, including the owner and project names.

+ +
+ +
+ + +

Branch URL

+

The external location where the Bazaar branch is hosted. It is None when the branch is hosted by Launchpad.

+ +
+ +
+ + +Webhooks for this target. + + + + + +

Whiteboard

+

Notes on the current status of the branch.

+ +
+ +
+
+ + + + +The associated CodeImport, if any. + + + + + +Date Last Modified + + + + + +

Description

+

A short description of the changes in this branch.

+ +
+ +
+ + +

Keep branch confidential

+

Make this branch visible only to its subscribers.

+ +
+ +
+ + +Status + + + + + + + + + + +

Name

+

Keep very short, unique, and descriptive, because it will be used in URLs. Examples: main, devel, release-1.0, gnome-vfs.

+ +
+ +
+ + +

Review Team

+

The reviewer of a branch is the person or exclusive team that is responsible for reviewing proposals and merging into this branch.

+ +
+ +
+ + +

Branch URL

+

The external location where the Bazaar branch is hosted. It is None when the branch is hosted by Launchpad.

+ +
+ +
+ + +

Whiteboard

+

Notes on the current status of the branch.

+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Branch merge proposals show intent of landing one branch on another. + + + + + + + + + + + + + + + + + + + + + + + + + +

Return the CodeReviewComment with the specified ID.

+ +++ + + + + +
raises WrongBranchMergeProposal:
 if the comment with this ID is not +on this merge proposal.
+ +
+ + + + + +A CodeReviewComment ID. + + + + + + + + + +
+ + +

Return the draft inline comments related to this MP.

+

The return value is a dictionary (object) where the keys are the +diff lines and their values are the actual draft comment created +by the given person.

+ +++ + + + + + + +
param previewdiff_id:
 The ID of the target PreviewDiff.
param person:The IPerson owner of the draft comments.
+ +
+ + + + + + + + + + +
+ + +Return the Bug tasks related to this merge proposal. + + + + + + + + + + + + + +

Return a list of inline comments related to this MP.

+

The return value is an list of dictionaries (objects), each one +representing a comment with 'line_number', 'person', 'text' and +'date' attributes.

+ +++ + + + + +
param previewdiff_id:
 The ID of the target PreviewDiff.
+ +
+ + + + + + + + + + +
+ + +

Create an ICodeReviewComment associated with this merge proposal.

+ +++ + + + + + + + + + + + + + + + +
param owner:The person who the message is from.
param subject:The subject line to use for the message.
param content:The text to use for the message content. If +unspecified, the text of the merge proposal is used.
param parent:The previous CodeReviewComment in the thread. If +unspecified, the root message is used.
param previewdiff_id:
 the inline comments PreviewDiff ID context.
param inline_comments:
 a dictionary containing the draft inline +comments keyed by the diff line number.
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +

Set the state of the merge proposal to the specified status.

+ +++ + + + + + + + + +
param status:The new status of the merge proposal.
param user:The user making the change.
param revision_id:
 The revision id to provide to the underlying +status change method.
+ +
+ + + + + +The new status of the merge proposal. + + + + + + + + + + + + + +An optional parameter for specifying the revision of the branch for the status change. + + + + + + +
+ + +

Set the specified person as a reviewer.

+

If they are not already a reviewer, a vote is created. Otherwise, +the details are updated.

+ +
+ + + + + +A reviewer. + + + + + + + + + + + + + +
+ + +Link a bug to this merge proposal. + + + + + + + + + + + + + + +Unlink a bug from this merge proposal. + + + + + + + + + + + + + + +

Save ICodeReviewInlineCommentDraft

+ +++ + + + + + + + + +
param previewdiff_id:
 The ID of the target PreviewDiff.
param person:The IPerson making the comments.
param comments:The comments.
+ +
+ + + + + + + + + + + + + + +
+ + +

Schedule updates of the diffs for this proposal.

+

This can be used if the previous attempt to generate diffs crashed, +or if Launchpad failed to notice that the current diffs are outdated +for some reason.

+ +++ + + + + +
param return_jobs:
 If True, return the created jobs.
+ +
+ + + + + + +
+ + +

Set the visible attribute on a code review comment.

+

This is restricted to Launchpad admins, registry experts, and +comment authors, and will return a HTTP Error 401: Unauthorized +error for non-admin callers.

+ +++ + + + + +
raises WrongBranchMergeProposal:
 if the comment with this ID is not +on this merge proposal.
+ +
+ + + + + +The comment ID. + + + + + +Show this comment? + + + + + + +
+
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +

The email address for this proposal.

+

Any emails sent to this address will resultin comments being added.

+ +
+ +
+ + +All messages discussing this merge proposal + + + + + +Bugs related to this object. + + + + + +

Commit message

+

The commit message that should be used when merging the source branch.

+ +
+ +
+ + +Date created + + + + + +

Date merged

+

The date that the source branch was merged into the target branch

+ +
+ +
+ + +Date review requested + + + + + +Date reviewed + + + + + +

Description

+

A detailed description of the changes that are being addressed by the branch being proposed to be merged.

+ +
+ +
+ + +

Merge reporter

+

The user that marked the branch as merged.

+ +
+ +
+ + +

Merged revision ID

+

The revision ID on the target branch which contains the merge from the source branch (currently Git only).

+ +
+ +
+ + +

Merged revision number

+

The revision number on the target branch which contains the merge from the source branch (Bazaar only).

+ +
+ +
+ + +

Prerequisite branch

+

The branch that the source branch branched from. If this branch is the same as the target branch, then leave this field blank.

+ +
+ +
+ + +

Prerequisite Git branch path

+

The path of the Git branch that the source branch branched from. If this branch is the same as the target branch, then leave this field blank.

+ +
+ +
+ + +

Prerequisite Git repository

+

The Git repository containing the branch that the source branch branched from. If this branch is the same as the target branch, then leave this field blank.

+ +
+ +
+ + +The current diff of the source branch against the target branch. + + + + + +All preview diffs for this merge proposal. + + + + + +

Proposal is confidential

+

If True, this proposal is visible only to subscribers.

+ +
+ +
+ + +

Status

+

The current state of the proposal.

+ +
+ + + + + + + + + +
+ + +

Person

+

The person who registered the merge proposal.

+ +
+ +
+ + +The revision id that has been approved by the reviewer. + + + + + +

Review person or team

+

The person that accepted (or rejected) the code for merging.

+ +
+ +
+ + +

Source branch

+

The branch that has code to land.

+ +
+ +
+ + +

Source Git branch path

+

The path of the Git branch that has code to land.

+ +
+ +
+ + +

Source Git repository

+

The Git repository that has code to land.

+ +
+ +
+ + +

Superseded by

+

The branch merge proposal that supersedes this one.

+ +
+ +
+ + +

Supersedes

+

The branch merge proposal that this one supersedes.

+ +
+ +
+ + +

Target branch

+

The branch that the source branch will be merged into.

+ +
+ +
+ + +

Target Git branch path

+

The path of the Git branch that the source branch will be merged into.

+ +
+ +
+ + +

Target Git repository

+

The Git repository that the source branch will be merged into.

+ +
+ +
+ + +The votes cast or expected for this proposal + + + +
+ + + + +

Commit message

+

The commit message that should be used when merging the source branch.

+ +
+ +
+ + +

Description

+

A detailed description of the changes that are being addressed by the branch being proposed to be merged.

+ +
+ +
+ + +The revision id that has been approved by the reviewer. + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +The relationship between a person and a branch. + + + + + + + + + + + + + + + + + + + + + + + + + +Can the user unsubscribe the subscriber from the branch? + + + + + + + + + + + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +Branch ID + + + + + +

Generated Diff Size Limit

+

Diffs greater than the specified number of lines will not be sent to the subscriber. The subscriber will still receive an email with the new revision details even if the diff is larger than the specified number of lines.

+ +
+ + + + + + +
+ + +

Notification Level

+

Attribute notifications are sent when branch details are changed such as lifecycle status and name. Revision notifications are generated when new branch revisions are found due to the branch being updated through either pushes to the hosted branches or the mirrored branches being updated.

+ +
+ + + + + +
+ + +

Person

+

Enter the launchpad id, or email address of the person you wish to subscribe to this branch. If you are unsure, use the "Choose..." option to find the person in Launchpad. You can only subscribe someone who is a registered user of the system.

+ +
+ +
+ + +

Code review Level

+

Control the kind of review activity that triggers notifications.

+ +
+ + + + +
+ + +

Subscribed by

+

The person who created this subscription.

+ +
+ +
+
+ + + + +

Generated Diff Size Limit

+

Diffs greater than the specified number of lines will not be sent to the subscriber. The subscriber will still receive an email with the new revision details even if the diff is larger than the specified number of lines.

+ +
+ + + + + + +
+ + +

Notification Level

+

Attribute notifications are sent when branch details are changed such as lifecycle status and name. Revision notifications are generated when new branch revisions are found due to the branch being updated through either pushes to the hosted branches or the mirrored branches being updated.

+ +
+ + + + + +
+ + +

Code review Level

+

Control the kind of review activity that triggers notifications.

+ +
+ + + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +A log of all things that have happened to a bug. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +Bug + + + + + +

Date Changed

+

The date on which this activity occurred.

+ +
+ +
+ + +

Message

+

Additional information about what changed.

+ +
+ +
+ + +

New Value

+

The value after the change.

+ +
+ +
+ + +

Old Value

+

The value before the change.

+ +
+ +
+ + +

Person

+

The person's Launchpad ID or email address.

+ +
+ +
+ + +

What Changed

+

The property of the bug that changed.

+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

A file attachment to an IBug.

+

Launchpadlib example of accessing content of an attachment:

+
+for attachment in bug.attachments:
+    buffer = attachment.data.open()
+    for line in buffer:
+        print(line)
+    buffer.close()
+
+

Launchpadlib example of accessing metadata about an attachment:

+
+attachment = bug.attachments[0]
+print("title:", attachment.title)
+print("ispatch:", attachment.type)
+
+

For information about the file-like object returned by +attachment.data.open() see lazr.restfulclient's documentation of the +HostedFile object.

+

Details about the message associated with an attachment can be found on +the "message" attribute:

+
+message = attachment.message
+print("subject:", message.subject)
+print("owner:", message.owner.display_name)
+print("created:", message.date_created)
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + +Remove the attachment from the bug. + + + + + + + + +
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +The bug the attachment belongs to. + + + + + +The attachment content. + + + + + +The message that was created when we added this attachment. + + + + + +

Title

+

A short and descriptive description of the attachment

+ +
+ +
+ + +

Attachment Type

+

The type of the attachment, for example Patch or Unspecified.

+ +
+ + + +
+ + +Attachment URL + + + +
+ + + + +The bug the attachment belongs to. + + + + + +The message that was created when we added this attachment. + + + + + +

Title

+

A short and descriptive description of the attachment

+ +
+ +
+ + +

Attachment Type

+

The type of the attachment, for example Patch or Unspecified.

+ +
+ + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +A branch linked to a bug. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +Branch + + + + + +Bug # + + + + + + + + +Branch + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +The core bug entry. + + + + + + + + + + + + + + + + + + + + + + + + + +

Can this bug nominated for this target?

+ +++ + + + + +
nomination_target:
 An IDistroSeries or IProductSeries.
+

Returns True or False.

+ +
+ + + + + +Target + + + + + + +
+ + +

Return the IBugNomination for the target.

+

If no nomination is found, a NotFoundError is raised.

+ +++ + + + + +
param nomination_target:
 An IDistroSeries or IProductSeries.
+ +
+ + + + + +Target + + + + + + + + + +
+ + +

Return a list of all IBugNominations for this bug.

+

The list is ordered by IBugNominations.target.bugtargetdisplayname.

+ +++ + + + + + + +
param target:An IProduct or IDistribution. Only nominations +for this target are returned.
param nominations:
 The list of nominations to search through. +If none is given, the bug's nominations are looked through. +This can be useful when having to call this method multiple +times, to avoid getting the list of nominations each time.
+ +
+ + + + + +Target + + + + + +Nominations to search through. + + + + + + + + + +
+ + +

Is this bug eligible for expiration and was it last updated +more than X days ago?

+

If days_old is None the default number of days without activity +is used.

+

Returns True or False.

+ +
+ + + + + +Number of days of inactivity for which to check. + + + + + + +
+ + +Return all the branches linked to the bug that user can see. + + + + + + + + + + +Return all the MPs linked to the bug that user can see. + + + + + + + + + + +

Associate a branch with this bug.

+ +++ + + + + + + +
param branch:The branch being linked to.
param registrant:
 The user linking the branch.
+ +
+ + + + + + + + + + +
+ + +

Unlink a branch from this bug.

+ +++ + + + + + +
param branch:The branch being unlinked from.
param user:The user unlinking the branch.
+ +
+ + + + + + + + + + +
+ + +

Nominate a bug for an IDistroSeries or IProductSeries.

+ +++ + + + + + +
owner:An IPerson.
target:An IDistroSeries or IProductSeries.
+

This method creates and returns a BugNomination. (See +lp.bugs.model.bugnomination.BugNomination.)

+ +
+ + + + + +Target + + + + + + + + + + + +
+ + +

Create a new bug task on this bug.

+ +++ + + + + +
raises IllegalTarget:
 if the bug task cannot be added to the bug.
+ +
+ + + + + +

Target

+

The software in which this bug should be fixed.

+ +
+ +
+
+
+ + + + + + +
+ + +Ensure that this CVE is linked to this bug. + + + + + + +CVE + + + + + + + + + +Ensure that any links between this bug and the given CVE are +removed. + + + + + + +CVE + + + + + + + + + +

Attach a file to this bug.

+ +++ + + + + + + + + + + + + + + + +
owner:An IPerson.
data:A file-like object, or a bytes.
description:A brief description of the attachment.
comment:An IMessage or string.
filename:A string.
url:External URL of the attachment
is_patch:A boolean.
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +Create a new watch for this bug on the given remote bug and bug +tracker, owned by the person given as the owner. + + + + + + +

Bug System

+

You can register new bug trackers from the Launchpad Bugs home page.

+ +
+ +
+ + +

Remote Bug

+

The bug number of this bug in the remote bug tracker.

+ +
+ +
+
+
+ + + + + + +
+ + +Mark :user: as affected by this bug. + + + + + + +Does this bug affect you? + + + + + + + + + +Set the visible attribute on a bug comment. This is restricted +to Launchpad admins, and will return a HTTP Error 401: Unauthorized +error for non-admin callers. + + + + + + +The number of the comment in the list of messages. + + + + + +Show this comment? + + + + + + + + + +Create a new message, and link it to this object. + + + + + + +Subject + + + + + +Message + + + + + +Enable email notifications for adding this comment. + + + + + + + + + + + + + + +

Subscribe person to the bug.

+ +++ + + + + + + + + + + + + + +
param person:the subscriber.
param subscribed_by:
 the person who created the subscription.
param suppress_notify:
 a flag to suppress notify call.
param level:The BugNotificationLevel for the new subscription.
return:an IBugSubscription.
+ +
+ + + + + +Person + + + + + +Level + + + + + + + + + +
+ + +Remove this person's subscription to this bug. + + + + + + +Person + + + + + + + + + +Remove this person's subscription from all dupes of this bug. + + + + + + +Person + + + + + + + + + +Is :user: marked as affected by this bug? + + + + + + + + + + +

Lock the bug metadata edits to the relevant roles.

+ +++ + + + + + + + +
param status:The lock status of the bug - one of the values +in the BugLockStatus enum.
param reason:The reason for locking this bug.
param who:The IPerson who is making the change.
+ +
+ + + + + +

Lock Status

+

The lock status of this bug.

+ +
+ + +
+ + +

Lock Reason

+

The reason for locking this bug.

+ +
+ +
+
+
+ +
+ + +

Unlock the bug metadata edits to the default roles.

+ +++ + + + +
param who:The IPerson who is making the change.
+ +
+ + + + + + +
+ + +Ensure that this MP is linked to this bug. + + + + + + +Merge proposal + + + + + + + + + +Ensure that any links between this bug and the given MP are +removed. + + + + + + +Merge proposal + + + + + + + + + +

Set the information type for this bug.

+ +++ + + + + + + +
information_type:
 The InformationType to transition to.
who:The IPerson who is making the change.
+ +
+ + + + + +

Information Type

+

The type of information contained in this bug report.

+ +
+ + + + + + + +
+
+
+ +
+ + +Add a muted subscription for person. + + + + + + +Person + + + + + + + + + +

Remove a muted subscription for person.

+

Returns previously muted direct subscription, if any.

+ +
+ + + + + +Person + + + + + + +
+
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +Log of activity that has occurred on this bug. + + + + + +List of bug attachments. + + + + + +BugTasks on this bug, sorted upstream, then by ubuntu, then by other distroseries. + + + + + +All bug watches associated with this bug. + + + + + +CVE entries related to this bug. + + + + + +Date Created + + + + + +Date of last bug message + + + + + +Date Last Updated + + + + + +Date Made Private + + + + + +

Description

+

A detailed description of the problem, +including the steps required to reproduce it.

+ +
+ +
+ + +Duplicate Of + + + + + +MultiJoin of bugs which are dupes of this one. + + + + + +The 'heat' of the bug + + + + + +Bug ID + + + + + +

Information Type

+

The type of information contained in this bug report.

+ +
+ + + + + + + +
+ + +Date when the most recent patch was uploaded. + + + + + +Bazaar branches associated with this bug, usually branches on which this bug is being fixed. + + + + + +Merge proposals associated with this bug (currently only Git-based merge proposals). + + + + + +

Lock Reason

+

The reason for locking this bug.

+ +
+ +
+ + +

Lock Status

+

The lock status of this bug.

+ +
+ + + +
+ + +The number of comments on this bug + + + + + +The messages related to this object, in reverse order of creation (so newest first). + + + + + +

Nickname

+

A short and unique name. +Add one only if you often need to retype the URL +but have trouble remembering the bug number.

+ +
+ +
+ + +The number of bugs marked as duplicates of this bug + + + + + +The number of users affected by this bug (including duplicates), excluding the current user + + + + + +The owner's IPerson + + + + + +

This bug report should be private

+

Private bug reports are visible only to their subscribers.

+ +
+ +
+ + +This bug is a security vulnerability. + + + + + +Subscriptions + + + + + +

Tags

+

Space-separated keywords for classifying this bug report.

+ +
+ +
+ + +

Summary

+

A one-line summary of the problem.

+ +
+ +
+ + +The number of users affected by this bug (not including duplicates) + + + + + +The number of users affected by this bug (not including duplicates) + + + + + +The number of users affected by this bug (including duplicates) + + + + + +Users affected (including duplicates) + + + + + +Users explicitly marked as unaffected (not including duplicates) + + + + + +The number of users unaffected by this bug + + + + + +Vulnerability instances related to this bug. + + + + + +

Who Made Private

+

The person who set this bug private.

+ +
+ +
+
+ + + + +

Description

+

A detailed description of the problem, +including the steps required to reproduce it.

+ +
+ +
+ + +Duplicate Of + + + + + +

Lock Reason

+

The reason for locking this bug.

+ +
+ +
+ + +

Nickname

+

A short and unique name. +Add one only if you often need to retype the URL +but have trouble remembering the bug number.

+ +
+ +
+ + +

This bug report should be private

+

Private bug reports are visible only to their subscribers.

+ +
+ +
+ + +This bug is a security vulnerability. + + + + + +

Tags

+

Space-separated keywords for classifying this bug report.

+ +
+ +
+ + +

Summary

+

A one-line summary of the problem.

+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

An entity which can be linked to bugs.

+

Examples include an ISpecification.

+ +
+ + + + + + + + + + + + + + + + + + + + + + +
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +Bugs related to this object. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

A nomination for a bug to be fixed in a specific series.

+

A nomination can apply to an IDistroSeries or an IProductSeries.

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + +Is this person allowed to approve the nomination? + + + + + + + + + + +

Approve this bug for fixing in a series.

+ +++ + + + +
approver:The IPerson that approves this nomination and that +will own the created bugtasks.
+

The status is set to APPROVED and the appropriate IBugTask(s) +are created for the nomination target.

+

A nomination in any state can be approved. If the nomination is +/already/ approved, this method is a noop.

+ +
+ + + + + + +
+ + +

Decline this bug for fixing in a series.

+ +++ + + + +
decliner:The IPerson that declines this nomination.
+

The status is set to DECLINED.

+

If called on a nomination that is in APPROVED state, a +BugNominationStatusError is raised. If the nomination was +already DECLINED, this method is a noop.

+ +
+ + + + + + +
+
+ + + + + The canonical link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + + + + + +

Date Submitted

+

The date on which this nomination was submitted.

+ +
+ +
+ + +

Date Decided

+

The date on which this nomination was approved or declined.

+ +
+ +
+ + +Decided By + + + + + +Series + + + + + +Submitter + + + + + +Series + + + + + +Status + + + + + + + + +The IProductSeries or IDistroSeries of this nomination. + + + +
+ + + + +The IProductSeries or IDistroSeries of this nomination. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +The relationship between a person and a bug. + + + + + + + + + + + + + + + + + + + + + + + + + +Can the user unsubscribe the subscriber from the bug? + + + + + + + + + + + + + + The canonical link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +Bug + + + + + +

Bug notification level

+

The volume and type of bug notifications this subscription will generate.

+ +
+ + + + +
+ + +Date subscribed + + + + + +

Person

+

The person's Launchpad ID or email address.

+ +
+ +
+ + +

Subscribed by

+

The person who created this subscription.

+ +
+ +
+
+ + + + +

Bug notification level

+

The volume and type of bug notifications this subscription will generate.

+ +
+ + + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +A bug subscription filter. + + + + + + + + + + + + + + + + + + + + + + + + + +Return True if this filter can be muted for person. + + + + + + + + + + +Return date muted if this filter was muted for person, or None. + + + + + + + + + + +Add a mute for person to this filter. + + + + + + + + + + +Remove any mute for person to this filter. + + + + + + + + + + + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +

Bug notification level

+

The volume and type of bug notifications this subscription will generate.

+ +
+ + + + +
+ + +A short description of this filter + + + + + +

Find all tags

+

If enabled, all tags must match, else at least one tag must match.

+ +
+ +
+ + +The importances interested in (empty for all) + + + + + +The information types interested in (empty for all) + + + + + +The statuses interested in (empty for all) + + + + + +Structural subscription + + + + + +The tags interested in + + + +
+ + + + +

Bug notification level

+

The volume and type of bug notifications this subscription will generate.

+ +
+ + + + +
+ + +A short description of this filter + + + + + +

Find all tags

+

If enabled, all tags must match, else at least one tag must match.

+ +
+ +
+ + +The importances interested in (empty for all) + + + + + +The information types interested in (empty for all) + + + + + +The statuses interested in (empty for all) + + + + + +The tags interested in + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

An entity on which a bug can be reported.

+

Examples include an IDistribution, an IDistroSeries and an +IProduct.

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + +

Search the IBugTasks reported on this entity.

+ +++ + + + +
search_params:a BugTaskSearchParams object
+

Return an iterable of matching results.

+

Note: milestone is currently ignored for all IBugTargets +except IProduct.

+ +
+ + + + + +List of fields by which the results are ordered. + + + + + +Bug ID or search text. + + + + + +

Status

+

Show only bugs with the given status value or list of values.

+ +
+ +
+ + +

Importance

+

Show only bugs with the given importance or list of importances.

+ +
+ +
+ + +

Information Type

+

Show only bugs with the given information type or list of information types.

+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Show only bugs with patches available. + + + + + +Show only bugs associated with a CVE + + + + + +

Tags

+

String or list of strings for tags to search. To exclude, prepend a '-', e.g. '-unwantedtag'

+ +
+ +
+ + +

Tags combination

+

Search for any or all of the tags specified.

+ +
+ + + +
+ + +Omit bugs marked as duplicate, + + + + + +

Status upstream

+

Indicates the status of any remote watches associated with the bug. Possible values include: pending_bugwatch, hide_upstream, resolved_upstream, and open_upstream.

+ +
+ +
+ + +

Milestone

+

Show only bug tasks targeted to this milestone.

+ +
+ +
+ + +

Component

+

Distribution package archive grouping. E.g. main, universe, multiverse

+ +
+ +
+ + + + + + +Exclude bugs with packages specified + + + + + +Search for bugs that are linked to branches or for bugs that are not linked to branches. + + + + + + + + +Search for bugs that have been modified since the given date. + + + + + +Search for bugs that have been created since the given date. + + + + + +Search for bugs that were created before the given date. + + + + + +Omit bugs targeted to a series + + + + + +Search for bugs that are linked to blueprints or for bugs that are not linked to blueprints. + + + + + + + +
+ + + + +
+
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +

After reporting a bug, I can expect the following.

+

This message of acknowledgement will be displayed to anyone after reporting a bug.

+ +
+ +
+ + +

Helpful guidelines for reporting a bug

+

These guidelines will be shown to everyone reporting a bug and should be text or a bulleted list with your particular requirements, if any.

+ +
+ +
+
+ + + + +

After reporting a bug, I can expect the following.

+

This message of acknowledgement will be displayed to anyone after reporting a bug.

+ +
+ +
+ + +

Helpful guidelines for reporting a bug

+

These guidelines will be shown to everyone reporting a bug and should be text or a bulleted list with your particular requirements, if any.

+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +A bug needing fixing in a particular product or package. + + + + + + + + + + + + + + + + + + + + + + + + + +Return the list of possible duplicates for this BugTask. + + + + + + + + + + + + + +

Is the person a contributor to bugs in this task's pillar?

+ +++ + + + + + +
param user:The user doing the search. Private bugs that this +user doesn't have access to won't be included in the search.
param person:The person to check to see if they are a contributor.
+

Return a dict with the following values: +is_contributor: True if the user has any bugs assigned to them in +the context of this bug task's pillar, either directly or by team +participation. +person_name: the displayname of the person +pillar_name: the displayname of the bug task's pillar

+

This API call is provided for use by the client Javascript where the +calling context does not have access to the person or pillar names.

+ +
+ + + + + +Assigned to + + + + + + +
+
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +Assigned to + + + + + +Bug + + + + + +The short, descriptive name of the target + + + + + +The target as presented in mail notifications + + + + + +

Remote Bug Details

+

Select the bug watch that represents this task in the relevant bug tracker. If none of the bug watches represents this particular bug task, leave it as (None). Linking the remote bug watch with the task in this way means that a change in the remote bug status will change the status of this bug task in Launchpad.

+ +
+ +
+ + +

Date Assigned

+

The date on which this task was assigned to someone.

+ +
+ +
+ + +

Date Closed

+

The date on which this task was marked Fix Released, Invalid, Won't Fix, Expired or Opinion.

+ +
+ +
+ + +

Date Confirmed

+

The date on which this task was marked Confirmed.

+ +
+ +
+ + +

Date Created

+

The date on which this task was created.

+ +
+ +
+ + +

Date Fix Committed

+

The date on which this task was marked Fix Committed.

+ +
+ +
+ + +

Date Fix Released

+

The date on which this task was marked Fix Released.

+ +
+ +
+ + +

Date In Progress

+

The date on which this task was marked In Progress.

+ +
+ +
+ + +

Date Incomplete

+

The date on which this task was marked Incomplete.

+ +
+ +
+ + +

Date left closed

+

The date on which this task was last reopened.

+ +
+ +
+ + +

Date left new

+

The date on which this task was marked with a status higher than New.

+ +
+ +
+ + +

Date Triaged

+

The date on which this task was marked Triaged.

+ +
+ +
+ + +Importance + + + + + + + + + + + + +

Importance explanation

+

The explanation for the current importance of this bugtask.

+ +
+ +
+ + +True or False depending on whether or not there is more work required on this bug task. + + + + + +Milestone + + + + + +The owner + + + + + +IBugTasks related to this one, namely other IBugTasks on the same IBug. + + + + + +Status + + + + + + + + + + + + + + + + + + +

Status explanation

+

The explanation for the current status of this bugtask.

+ +
+ +
+ + +

Target

+

The software in which this bug should be fixed.

+ +
+ +
+ + +The title of the bug related to this bugtask + + + +
+ + + + +Assigned to + + + + + +

Remote Bug Details

+

Select the bug watch that represents this task in the relevant bug tracker. If none of the bug watches represents this particular bug task, leave it as (None). Linking the remote bug watch with the task in this way means that a change in the remote bug status will change the status of this bug task in Launchpad.

+ +
+ +
+ + +Importance + + + + + + + + + + + + +

Importance explanation

+

The explanation for the current importance of this bugtask.

+ +
+ +
+ + +Milestone + + + + + +Status + + + + + + + + + + + + + + + + + + +

Status explanation

+

The explanation for the current status of this bugtask.

+ +
+ +
+ + +

Target

+

The software in which this bug should be fixed.

+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

The software component in the remote bug tracker.

+

Most bug trackers organize bug reports by the software 'component' +they affect. This class provides a mapping of this upstream component +to the corresponding source package in the distro.

+ +
+ + + + + + + + + + + + + + + + + + + + + + +
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +Component Group + + + + + +

Distribution Source Package

+

The distribution source package object that should be linked to this component.

+ +
+ +
+ + +

Is Visible?

+

Should the component be shown in the Launchpad web interface?

+ +
+ +
+ + +

Name

+

The name of a software component as shown in Launchpad.

+ +
+ +
+
+ + + + +Component Group + + + + + +

Distribution Source Package

+

The distribution source package object that should be linked to this component.

+ +
+ +
+ + +

Is Visible?

+

Should the component be shown in the Launchpad web interface?

+ +
+ +
+ + +

Name

+

The name of a software component as shown in Launchpad.

+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

A collection of components in a remote bug tracker.

+

Some bug trackers organize sets of components into higher level groups, +such as Bugzilla's 'product'.

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + +Adds a component to be tracked as part of this component group + + + + + + +The name of the remote software component to be added + + + + + + + +
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +BugTracker + + + + + +Components. + + + + + +

Name

+

The name of the bug tracker product.

+ +
+ +
+
+ + + + +BugTracker + + + + + +

Name

+

The name of the bug tracker product.

+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

A remote bug system.

+

Launchpadlib example: What bug tracker is used for a distro source +package?

+
+product = source_package.upstream_product
+if product:
+    tracker = product.bug_tracker
+    if not tracker:
+        project = product.project_group
+        if project:
+            tracker = project.bug_tracker
+if tracker:
+    print "%s at %s" %(tracker.bug_tracker_type, tracker.base_url)
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + +Return collection of all component groups for this bug tracker + + + + + + + + + + + + + +

Retrieve a given component group registered with the bug tracker.

+ +++ + + + + +
param component_group_name:
 Name of the component group to retrieve.
+ +
+ + + + + +The name of the remote component group + + + + + + + + + +
+ + +

Returns the component linked to this source package, if any.

+

If no components have been linked, returns value of None.

+ +
+ + + + + +The distribution for the source package + + + + + +The source package name + + + + + + + + + +
+ + +Adds a new component group to the bug tracker + + + + + + +The name of the remote component group + + + + + + + + + + +
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +Updates for this bug tracker are enabled + + + + + +

Location

+

The top-level URL for the bug tracker, or an upstream email address. This must be accurate so that Launchpad can link to external bug reports.

+ +
+ +
+ + +

Location aliases

+

A list of URLs or email addresses that all lead to the same bug tracker, or commonly seen typos, separated by whitespace.

+ +
+ +
+ + +Bug Tracker Type + + + + + + + + + + + + + + + + + + +

Contact details

+

The contact details for the external bug tracker (so that, for example, its administrators can be contacted about a security breach).

+ +
+ +
+ + +This bug tracker has a Launchpad plugin installed. + + + + + +

Name

+

A URL-friendly name for the bug tracker, such as "mozilla-bugs".

+ +
+ +
+ + +Owner + + + + + +

Summary

+

A brief introduction or overview of this bug tracker instance.

+ +
+ +
+ + +

Title

+

A descriptive label for this tracker to show in listings.

+ +
+ +
+ + +The remote watches on this bug tracker. + + + +
+ + + + +Updates for this bug tracker are enabled + + + + + +

Location

+

The top-level URL for the bug tracker, or an upstream email address. This must be accurate so that Launchpad can link to external bug reports.

+ +
+ +
+ + +

Location aliases

+

A list of URLs or email addresses that all lead to the same bug tracker, or commonly seen typos, separated by whitespace.

+ +
+ +
+ + +Bug Tracker Type + + + + + + + + + + + + + + + + + + +

Contact details

+

The contact details for the external bug tracker (so that, for example, its administrators can be contacted about a security breach).

+ +
+ +
+ + +This bug tracker has a Launchpad plugin installed. + + + + + +

Name

+

A URL-friendly name for the bug tracker, such as "mozilla-bugs".

+ +
+ +
+ + +Owner + + + + + +

Summary

+

A brief introduction or overview of this bug tracker instance.

+ +
+ +
+ + +

Title

+

A descriptive label for this tracker to show in listings.

+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +A bug on a remote system. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +Bug + + + + + +The tasks which this watch will affect. In Launchpad, a bug watch can be linked to one or more tasks, and if it is linked and we notice a status change in the watched bug then we will try to update the Launchpad bug task accordingly. + + + + + +

Bug System

+

You can register new bug trackers from the Launchpad Bugs home page.

+ +
+ +
+ + +Date Created + + + + + +Last Changed + + + + + +Last Checked + + + + + +Next Check + + + + + +Last Error Type + + + + + + + + + + + + + + + + + + +Owner + + + + + +

Remote Bug

+

The bug number of this bug in the remote bug tracker.

+ +
+ +
+ + +Remote Importance + + + + + +Remote Status + + + + + +Bug watch title + + + + + +The URL at which to view the remote bug. + + + +
+ + + + +

Bug System

+

You can register new bug trackers from the Launchpad Bugs home page.

+ +
+ +
+ + +Last Changed + + + + + +Last Checked + + + + + +Next Check + + + + + +Last Error Type + + + + + + + + + + + + + + + + + + +

Remote Bug

+

The bug number of this bug in the remote bug tracker.

+ +
+ +
+ + +Remote Importance + + + + + +Remote Status + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Operations that jobs for the build farm must implement. + + + + + + + + + + + + + + + + + + + + + + + + + +Change the build's score. + + + + + + +Score + + + + + + + + + +

Restore the build record to its initial state.

+

Build record loses its history, is moved to NEEDSBUILD and a new +non-scored BuildQueue entry is created for it.

+ +
+ + + + + + +
+ + +

Cancel the build if it is either pending or in progress.

+

Check the can_be_cancelled property prior to calling this method to +find out if cancelling the build is possible.

+

If the build is in progress, it is marked as CANCELLING until the +buildd manager terminates the build and marks it CANCELLED. If the +build is not in progress, it is marked CANCELLED immediately and is +removed from the build queue.

+

If the build is not in a cancellable state, this method is a no-op.

+ +
+ + + + + + +
+
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +

Build Log URL

+

A URL for the build log. None if there is no log available.

+ +
+ +
+ + +

Builder

+

The builder assigned to this job.

+ +
+ +
+ + +

Status

+

The current status of the job.

+ +
+ + + + + + + + + + + + + +
+ + +

Can be cancelled

+

Whether this build record can be cancelled.

+ +
+ +
+ + +

Can be rescored

+

Whether this build record can be rescored manually.

+ +
+ +
+ + +

Can be retried

+

Whether this build record can be retried.

+ +
+ +
+ + +

Date finished

+

The actual build start time. Set when the build is dispatched the first time and not changed in subsequent build attempts.

+ +
+ +
+ + +

Date started

+

The timestamp when the build farm job was started.

+ +
+ +
+ + +

Date finished

+

The timestamp when the build farm job was finished.

+ +
+ +
+ + +

Date created

+

The timestamp when the build farm job was created.

+ +
+ +
+ + +

Dependencies

+

Debian-like dependency line that must be satisfied before attempting to build this request.

+ +
+ +
+ + +

Duration

+

Duration interval, calculated when the result gets collected.

+ +
+ +
+ + +Title + + + +
+ + + + +

Build Log URL

+

A URL for the build log. None if there is no log available.

+ +
+ +
+ + +

Status

+

The current status of the job.

+ +
+ + + + + + + + + + + + + +
+ + +

Dependencies

+

Debian-like dependency line that must be satisfied before attempting to build this request.

+ +
+ +
+ + +Title + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Builder information and state.

+

Builder instance represents a single machine within the +Launchpad Auto Build System. It should specify a 'processor' on which the +machine is based and is able to build packages for; a URL, by which the +machine is accessed through an XML-RPC interface; name, title for entity +identification and browsing purposes; an LP-like owner which has +unrestricted access to the instance; the machine status +representation, including the field/properties: virtualized, +open_resources, restricted_resources, builderok, status, failnotes and +currentjob.

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + +

Return build records in the context it is implemented.

+

It excludes build records generated by Gina (imported from a external +repository), where IBuild.datebuilt is null and IBuild.buildstate +is BuildStatus.FULLYBUILT.

+

The result is simply not filtered if the optional filters are omitted +by call sites.

+ +++ + + + + + + + + + + + + + + + + + +
param build_state:
 optional BuildStatus value for filtering build +records;
param name:optional string for filtering build source package name. +Sub-string matching is allowed via SQL LIKE.
param pocket:optional PackagePublishingPocket value for filtering +build records;
param arch_tag:optional string for filtering build source packages +by their architecture tag;
param user:optional IPerson corresponding to the user performing +the request. It will filter out build records for which the user +have no 'view' permission.
param binary_only:
 optional boolean indicating whether only +BinaryPackageBuild objects should be returned, or more general +PackageBuild objects (which may include, for example, +SourcePackageRecipeBuild objects.
return:a result set containing IPackageBuild records ordered by +descending IPackageBuild.date_finished except when builds are +filtered by BuildStatus.NEEDSBUILD, in this case records +are ordered by descending BuildQueue.lastscore +(dispatching order).
+ +
+ + + + + +Source package name + + + + + +

Build status

+

The status of this build record

+ +
+ + + + + + + + + + + + + +
+ + +

Pocket

+

The pocket into which this entry is published

+ +
+ + + + + + +
+ +
+ + + + +
+
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +

Publicly Visible

+

Whether or not to present the builder publicly.

+ +
+ +
+ + +

Builder State OK

+

Whether or not the builder is ok

+ +
+ +
+ + +

Clean status

+

The readiness of the builder to take a job. Only internal build infrastructure bots need to or should write to this.

+ +
+ + + + +
+ + +

Current build

+

The job currently running on this builder.

+ +
+ +
+ + +

Date clean status changed

+

The date the builder's clean status last changed.

+ +
+ +
+ + +

Failure Notes

+

The reason for a builder not being ok

+ +
+ +
+ + +

Failure Count

+

Number of consecutive failures for this builder.

+ +
+ +
+ + +

Manual Mode

+

The auto-build system does not dispatch jobs automatically for builders in manual mode.

+ +
+ +
+ + +

Name

+

The builder name used for reference purposes

+ +
+ +
+ + +

Open resources

+

Resource tags offered by this builder, that can be required by a build and if required must match.

+ +
+ +
+ + +

Owner

+

Builder owner, a Launchpad member which will be responsible for this device.

+ +
+ +
+ + +

Processor

+

DEPRECATED: Processor identifying jobs which can be built by this device. Use processors instead to handle multiple supported architectures.

+ +
+ +
+ + +

Processors

+

Processors identifying jobs which can be built by this device.

+ +
+ +
+ + +

Restricted resources

+

Resource tags offered by this builder, indicating that the builder may only be used by builds that explicitly require these tags.

+ +
+ +
+ + +

Title

+

The builder title. Should be just a few words.

+ +
+ +
+ + +

URL

+

The URL to the build machine, used as a unique identifier. Includes protocol, host and port only, e.g.: http://farm.com:8221/

+ +
+ +
+ + +

Version

+

The version of launchpad-buildd on the worker.

+ +
+ +
+ + +

Virtualized

+

Whether or not the builder is a virtual Xen instance.

+ +
+ +
+ + +

VM host

+

The machine hostname hosting the virtual buildd-worker, e.g.: foobar-host.ppa

+ +
+ +
+ + +

VM reset protocol

+

The protocol version for resetting the VM.

+ +
+ + + +
+
+ + + + +

Publicly Visible

+

Whether or not to present the builder publicly.

+ +
+ +
+ + +

Builder State OK

+

Whether or not the builder is ok

+ +
+ +
+ + +

Clean status

+

The readiness of the builder to take a job. Only internal build infrastructure bots need to or should write to this.

+ +
+ + + + +
+ + +

Failure Notes

+

The reason for a builder not being ok

+ +
+ +
+ + +

Failure Count

+

Number of consecutive failures for this builder.

+ +
+ +
+ + +

Manual Mode

+

The auto-build system does not dispatch jobs automatically for builders in manual mode.

+ +
+ +
+ + +

Name

+

The builder name used for reference purposes

+ +
+ +
+ + +

Open resources

+

Resource tags offered by this builder, that can be required by a build and if required must match.

+ +
+ +
+ + +

Owner

+

Builder owner, a Launchpad member which will be responsible for this device.

+ +
+ +
+ + +

Processor

+

DEPRECATED: Processor identifying jobs which can be built by this device. Use processors instead to handle multiple supported architectures.

+ +
+ +
+ + +

Processors

+

Processors identifying jobs which can be built by this device.

+ +
+ +
+ + +

Restricted resources

+

Resource tags offered by this builder, indicating that the builder may only be used by builds that explicitly require these tags.

+ +
+ +
+ + +

Title

+

The builder title. Should be just a few words.

+ +
+ +
+ + +

URL

+

The URL to the build machine, used as a unique identifier. Includes protocol, host and port only, e.g.: http://farm.com:8221/

+ +
+ +
+ + +

Version

+

The version of launchpad-buildd on the worker.

+ +
+ +
+ + +

Virtualized

+

Whether or not the builder is a virtual Xen instance.

+ +
+ +
+ + +

VM host

+

The machine hostname hosting the virtual buildd-worker, e.g.: foobar-host.ppa

+ +
+ +
+ + +

VM reset protocol

+

The protocol version for resetting the VM.

+ +
+ + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +A build record for a pipeline of CI jobs. + + + + + + + + + + + + + + + + + + + + + + + + + +

URLs for all the files produced by this build.

+ +++ + + + +
return:A collection of URLs for this build.
+ +
+ + + + + + +
+ + +Change the build's score. + + + + + + +Score + + + + + + + + + +

Restore the build record to its initial state.

+

Build record loses its history, is moved to NEEDSBUILD and a new +non-scored BuildQueue entry is created for it.

+ +
+ + + + + + +
+ + +

Cancel the build if it is either pending or in progress.

+

Check the can_be_cancelled property prior to calling this method to +find out if cancelling the build is possible.

+

If the build is in progress, it is marked as CANCELLING until the +buildd manager terminates the build and marks it CANCELLED. If the +build is not in progress, it is marked CANCELLED immediately and is +removed from the build queue.

+

If the build is not in a cancellable state, this method is a no-op.

+ +
+ + + + + + +
+
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +Architecture tag + + + + + +

Archive

+

The Archive context for this build.

+ +
+ +
+ + +

Build Log URL

+

A URL for the build log. None if there is no log available.

+ +
+ +
+ + +

Builder

+

The builder assigned to this job.

+ +
+ +
+ + +

Status

+

The current status of the job.

+ +
+ + + + + + + + + + + + + +
+ + +

Can be cancelled

+

Whether this build record can be cancelled.

+ +
+ +
+ + +

Can be rescored

+

Whether this build record can be rescored manually.

+ +
+ +
+ + +

Can be retried

+

Whether this build record can be retried.

+ +
+ +
+ + +The Git commit ID for this CI build. + + + + + +

Date finished

+

The actual build start time. Set when the build is dispatched the first time and not changed in subsequent build attempts.

+ +
+ +
+ + +

Date started

+

The timestamp when the build farm job was started.

+ +
+ +
+ + +

Date finished

+

The timestamp when the build farm job was finished.

+ +
+ +
+ + +

Date created

+

The timestamp when the build farm job was created.

+ +
+ +
+ + +

Dependencies

+

Debian-like dependency line that must be satisfied before attempting to build this request.

+ +
+ +
+ + +

Distribution

+

Shortcut for its distribution.

+ +
+ +
+ + +The series and architecture that this CI build should run on. + + + + + +

Distribution series

+

Shortcut for its distribution series.

+ +
+ +
+ + +

Duration

+

Duration interval, calculated when the result gets collected.

+ +
+ +
+ + +The git references that originated this CI Build. + + + + + +The Git repository for this CI build. + + + + + +

Pocket

+

The build targeted pocket.

+ +
+ + + + + + +
+ + +A mapping from job IDs to result tokens, retrieved from the builder. + + + + + +Score of the related build farm job (if any). + + + + + +A list of stages in this build's configured pipeline. + + + + + +Title + + + + + +

Upload Log URL

+

A URL for failed upload logs.Will be None if there was no failure.

+ +
+ +
+
+ + + + +

Build Log URL

+

A URL for the build log. None if there is no log available.

+ +
+ +
+ + +

Status

+

The current status of the job.

+ +
+ + + + + + + + + + + + + +
+ + +

Dependencies

+

Debian-like dependency line that must be satisfied before attempting to build this request.

+ +
+ +
+ + +

Distribution

+

Shortcut for its distribution.

+ +
+ +
+ + +

Distribution series

+

Shortcut for its distribution series.

+ +
+ +
+ + +

Pocket

+

The build targeted pocket.

+ +
+ + + + + + +
+ + +A mapping from job IDs to result tokens, retrieved from the builder. + + + + + +A list of stages in this build's configured pipeline. + + + + + +Title + + + + + +

Upload Log URL

+

A URL for failed upload logs.Will be None if there was no failure.

+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +A base for charms. + + + + + + + + + + + + + + + + + + + + + + + + + +Set the architectures that the charm base supports. + + + + + + + + + + + + + + + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +

Source snap channels for builds

+

A dictionary mapping snap names to channels to use when building charm recipes that specify this base. The special '_byarch' key may have a mapping of architecture names to mappings of snap names to channels, which if present override the channels declared at the top level when building for those architectures.

+ +
+ +
+ + +Date created + + + + + +Distro series + + + + + +

Processors

+

The architectures that the charm base supports.

+ +
+ +
+ + +

Registrant

+

The person who registered this base.

+ +
+ +
+
+ + + + +

Source snap channels for builds

+

A dictionary mapping snap names to channels to use when building charm recipes that specify this base. The special '_byarch' key may have a mapping of architecture names to mappings of snap names to channels, which if present override the channels declared at the top level when building for those architectures.

+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +A build record for a charm recipe. + + + + + + + + + + + + + + + + + + + + + + + + + +

URLs for all the files produced by this build.

+ +++ + + + +
return:A collection of URLs for this build.
+ +
+ + + + + + +
+ + +Change the build's score. + + + + + + +Score + + + + + + + + + +

Restore the build record to its initial state.

+

Build record loses its history, is moved to NEEDSBUILD and a new +non-scored BuildQueue entry is created for it.

+ +
+ + + + + + +
+ + +

Cancel the build if it is either pending or in progress.

+

Check the can_be_cancelled property prior to calling this method to +find out if cancelling the build is possible.

+

If the build is in progress, it is marked as CANCELLING until the +buildd manager terminates the build and marks it CANCELLED. If the +build is not in progress, it is marked CANCELLED immediately and is +removed from the build queue.

+

If the build is not in a cancellable state, this method is a no-op.

+ +
+ + + + + + +
+ + +

Schedule an upload of this build to the store.

+ +++ + + + + +
raises CannotScheduleStoreUpload:
 if the build is not in a state +where an upload can be scheduled.
+ +
+ + + + + + +
+
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +Architecture tag + + + + + +

Archive

+

The Archive context for this build.

+ +
+ +
+ + +

Build Log URL

+

A URL for the build log. None if there is no log available.

+ +
+ +
+ + +

Builder

+

The builder assigned to this job.

+ +
+ +
+ + +

Status

+

The current status of the job.

+ +
+ + + + + + + + + + + + + +
+ + +

Can be cancelled

+

Whether this build record can be cancelled.

+ +
+ +
+ + +

Can be rescored

+

Whether this build record can be rescored manually.

+ +
+ +
+ + +

Can be retried

+

Whether this build record can be retried.

+ +
+ +
+ + +

Source snap channels to use for this build.

+

A dictionary mapping snap names to channels to use for this build. +Supported snap names: 'charmcraft', 'core', 'core18', 'core20', 'core22', 'core24'

+ +
+ +
+ + +

Date finished

+

The actual build start time. Set when the build is dispatched the first time and not changed in subsequent build attempts.

+ +
+ +
+ + +

Date started

+

The timestamp when the build farm job was started.

+ +
+ +
+ + +

Date finished

+

The timestamp when the build farm job was finished.

+ +
+ +
+ + +

Date created

+

The timestamp when the build farm job was created.

+ +
+ +
+ + +

Dependencies

+

Debian-like dependency line that must be satisfied before attempting to build this request.

+ +
+ +
+ + +

Distribution

+

Shortcut for its distribution.

+ +
+ +
+ + +The series and architecture for which to build. + + + + + +

Distribution series

+

Shortcut for its distribution series.

+ +
+ +
+ + +

Duration

+

Duration interval, calculated when the result gets collected.

+ +
+ +
+ + +

Pocket

+

The build targeted pocket.

+ +
+ + + + + + +
+ + +The charm recipe to build. + + + + + +The person who requested this build. + + + + + +

Revision ID

+

The revision ID of the branch used for this build, if available.

+ +
+ +
+ + +Score of the related build farm job (if any). + + + + + +

Store upload error message

+

The error message, if any, from the last attempt to upload this charm recipe build to Charmhub.

+ +
+ +
+ + +

Store revision

+

The revision assigned to this charm recipe build by Charmhub.

+ +
+ +
+ + +Store upload status + + + + + + + + + + +Title + + + + + +

Upload Log URL

+

A URL for failed upload logs.Will be None if there was no failure.

+ +
+ +
+
+ + + + +

Build Log URL

+

A URL for the build log. None if there is no log available.

+ +
+ +
+ + +

Status

+

The current status of the job.

+ +
+ + + + + + + + + + + + + +
+ + +

Source snap channels to use for this build.

+

A dictionary mapping snap names to channels to use for this build. +Supported snap names: 'charmcraft', 'core', 'core18', 'core20', 'core22', 'core24'

+ +
+ +
+ + +

Dependencies

+

Debian-like dependency line that must be satisfied before attempting to build this request.

+ +
+ +
+ + +

Distribution

+

Shortcut for its distribution.

+ +
+ +
+ + +

Distribution series

+

Shortcut for its distribution series.

+ +
+ +
+ + +

Pocket

+

The build targeted pocket.

+ +
+ + + + + + +
+ + +Store upload status + + + + + + + + + + +Title + + + + + +

Upload Log URL

+

A URL for failed upload logs.Will be None if there was no failure.

+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +A request to build a charm recipe. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +Builds produced by this request + + + + + +The time when this request finished + + + + + +The time when this request was made + + + + + +Error message + + + + + +Charm recipe + + + + + +Status + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +A buildable charm recipe. + + + + + + + + + + + + + + + + + + + + + + + + + +Create a new webhook. + + + + + + +Delivery URL + + + + + +

Active

+

Deliver details of subscribed events.

+ +
+ +
+ + +Event types + + + + + +

Secret

+

An optional string used to sign delivery bodies with HMAC-SHA1 in the X-Hub-Signature header. This must be less than 200 bytes long.

+ +
+ +
+
+
+ + + + + + +
+ + +

Begin authorizing uploads of this charm recipe to Charmhub.

+ +++ + + + + + + + + + + + + +
raises CannotAuthorizeCharmhubUploads:
 if the charm recipe is not +properly configured for Charmhub uploads.
raises BadRequestPackageUploadResponse:
 if Charmhub returns an +error or a response without a macaroon when asked to issue a +macaroon.
raises BadCandidMacaroon:
 if the macaroon returned by Charmhub has +unsuitable Candid caveats.
return:The serialized macaroon returned by the store. The caller +should acquire a discharge macaroon for this caveat from Candid +and then call completeAuthorization.
+ +
+ + + + + + +
+ + +

Complete authorizing uploads of this charm recipe to Charmhub.

+ +++ + + + + + + + +
param unbound_discharge_macaroon_raw:
 The serialized unbound +discharge macaroon returned by Candid.
raises CannotAuthorizeCharmhubUploads:
 if the charm recipe is not +properly configured for Charmhub uploads.
+ +
+ + + + + +Serialized discharge macaroon + + + + + + +
+ + +

Request that the charm recipe be built.

+

This is an asynchronous operation; once the operation has finished, +the resulting build request's C{status} will be "Completed" and its +C{builds} collection will return the resulting builds.

+ +++ + + + + + + + + + + + +
param requester:
 The person requesting the builds.
param channels:A dictionary mapping snap names to channels to use +for these builds.
param architectures:
 If not None, limit builds to architectures +with these architecture tags (in addition to any other +applicable constraints).
return:An ICharmRecipeBuildRequest.
+ +
+ + + + + +

Source snap channels to use for these builds.

+

A dictionary mapping snap names to channels to use for these builds. +Supported snap names: 'charmcraft', 'core', 'core18', 'core20', 'core22', 'core24'

+ +
+ +
+
+
+ + + + + + +
+
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +

Automatically build when branch changes

+

Whether this charm recipe is built automatically when its branch changes.

+ +
+ +
+ + +

Source snap channels for automatic builds

+

A dictionary mapping snap names to channels to use when building this charm recipe. +Supported snap names: 'charmcraft', 'core', 'core18', 'core20', 'core22', 'core24'

+ +
+ +
+ + +

Build path

+

Subdirectory within the branch containing metadata.yaml.

+ +
+ +
+ + +

All builds of this charm recipe.

+

All builds of this charm recipe, sorted in descending order of finishing (or starting if not completed successfully).

+ +
+ +
+ + +

Can upload to Charmhub

+

Whether everything is set up to allow uploading builds of this charm recipe to Charmhub.

+ +
+ +
+ + +

Completed builds of this charm recipe.

+

Completed builds of this charm recipe, sorted in descending order of finishing.

+ +
+ +
+ + +Date created + + + + + +Date last modified + + + + + +

Description

+

A description of the charm recipe.

+ +
+ +
+ + +Failed build requests for this charm recipe. + + + + + +

Git branch

+

The Git branch containing a charm recipe.

+ +
+ +
+ + +

Information type

+

The type of information contained in this charm recipe.

+ +
+ + + + + + + +
+ + +Charm recipe is stale and is due to be rebuilt. + + + + + +

Charm recipe name

+

The name of the charm recipe.

+ +
+ +
+ + +

Owner

+

The owner of this charm recipe.

+ +
+ +
+ + +Pending build requests for this charm recipe. + + + + + +

Pending builds of this charm recipe.

+

Pending builds of this charm recipe, sorted in descending order of creation.

+ +
+ +
+ + +

Private

+

Whether this charm recipe is private.

+ +
+ +
+ + +The project that this charm recipe is associated with + + + + + +

Registrant

+

The person who registered this charm recipe.

+ +
+ +
+ + +

Require virtualized builders

+

Only build this charm recipe on virtual builders.

+ +
+ +
+ + +

Store channels

+

Channels to release this charm to after uploading it to the store. A channel is defined by a combination of an optional track, a risk, and an optional branch, e.g. '2.1/stable/fix-123', '2.1/stable', 'stable/fix-123', or 'stable'.

+ +
+ +
+ + +

Registered store name

+

The registered name of this charm in the store.

+ +
+ +
+ + +

Automatically upload to store

+

Whether builds of this charm recipe are automatically uploaded to the store.

+ +
+ +
+ + +Webhooks for this target. + + + +
+ + + + +

Automatically build when branch changes

+

Whether this charm recipe is built automatically when its branch changes.

+ +
+ +
+ + +

Source snap channels for automatic builds

+

A dictionary mapping snap names to channels to use when building this charm recipe. +Supported snap names: 'charmcraft', 'core', 'core18', 'core20', 'core22', 'core24'

+ +
+ +
+ + +

Build path

+

Subdirectory within the branch containing metadata.yaml.

+ +
+ +
+ + +

Description

+

A description of the charm recipe.

+ +
+ +
+ + +

Git branch

+

The Git branch containing a charm recipe.

+ +
+ +
+ + +

Information type

+

The type of information contained in this charm recipe.

+ +
+ + + + + + + +
+ + +

Charm recipe name

+

The name of the charm recipe.

+ +
+ +
+ + +

Owner

+

The owner of this charm recipe.

+ +
+ +
+ + +

Private

+

Whether this charm recipe is private.

+ +
+ +
+ + +The project that this charm recipe is associated with + + + + + +

Require virtualized builders

+

Only build this charm recipe on virtual builders.

+ +
+ +
+ + +

Store channels

+

Channels to release this charm to after uploading it to the store. A channel is defined by a combination of an optional track, a risk, and an optional branch, e.g. '2.1/stable/fix-123', '2.1/stable', 'stable/fix-123', or 'stable'.

+ +
+ +
+ + +

Registered store name

+

The registered name of this charm in the store.

+ +
+ +
+ + +

Automatically upload to store

+

Whether builds of this charm recipe are automatically uploaded to the store.

+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +A code import to a Bazaar branch or Git repository. + + + + + + + + + + + + + + + + + + + + + + + + + +

Request that an import be tried soon.

+

This method will schedule an import to happen soon for this branch.

+

The import must be in the Reviewed state, if not then a +CodeImportNotInReviewedState error will be thrown. If using the +API then a status code of 400 will result.

+

If the import is already running then a CodeImportAlreadyRunning +error will be thrown. If using the API then a status code of +400 will result.

+

The two cases can be distinguished over the API by seeing if the +exception names appear in the body of the response.

+

If used over the API and the request has already been made then this +method will silently do nothing. +If called internally then the error_if_already_requested parameter +controls whether a CodeImportAlreadyRequested exception will be +thrown in that situation.

+ +++ + + + +
return:None
+ +
+ + + + + + +
+
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +

Branch

+

The Bazaar branch produced by the import system.

+ +
+ +
+ + +

Module

+

The path to import within the repository. Usually, it is the name of the project.

+ +
+ +
+ + +

Repository

+

The CVSROOT. Example: :pserver:anonymous@anoncvs.gnome.org:/cvs/gnome

+ +
+ +
+ + +Last successful + + + + + +

Git repository

+

The Git repository produced by the import system.

+ +
+ +
+ + +

Type of RCS

+

The revision control system to import from.

+ +
+ + + + + + + +
+ + +

Review Status

+

Only reviewed imports are processed.

+ +
+ + + + + + +
+ + +

Type of target RCS

+

The revision control system to import to.

+ +
+ + + +
+ + +

URL

+

The URL of the VCS branch.

+ +
+ +
+
+ + + + +

URL

+

The URL of the VCS branch.

+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +A link between a merge proposal and a message. + + + + + + + + + + + + + + + + + + + + + + + + + +Edit the content of this message, generating a new message +revision with the old content. + + + + + + +

Message content

+

The new message content string

+ +
+ +
+
+
+ +
+ + +Deletes this message content. + + + + + + + + +
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +The message as quoted in email. + + + + + +Comment Author + + + + + +The branch merge proposal + + + + + +All the text/plain chunks joined together as a unicode string. + + + + + +Date Created + + + + + +When this message was deleted + + + + + +When this message was last edited + + + + + +

DB ID

+

The tracking number for this comment.

+ +
+ +
+ + +Deprecated. Use "content" attribute instead. + + + + + +Person + + + + + +

Message revision history

+

Revision history of this message, sorted in ascending order.

+ +
+ +
+ + +The title of the comment + + + + + +Review + + + + + + + + + + + +Vote tag + + + +
+ + + + +The title of the comment + + + + + +Review + + + + + + + + + + + +Vote tag + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

A reference to a vote on a IBranchMergeProposal.

+

There is at most one reference to a vote for each reviewer on a given +branch merge proposal.

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + +

Change a pending review into a review for claimant.

+

Pending team reviews can be claimed by members of that team. This +allows reviews to be moved of the general team todo list, and onto a +personal todo list.

+ +++ + + + + + + +
param claimant:The person claiming the team review.
raises ClaimReviewFailed:
 If the claimant already has a +personal review, if the reviewer is not a team, if the +claimant is not in the reviewer team, or if the review is +not pending.
+ +
+ + + + + + +
+ + +

Reassign a pending review to someone else.

+

Pending reviews can be reassigned to someone else.

+ +++ + + + + + + + + + +
param reviewer:The person to assign the pending review to.
raises ReviewNotPending:
 If the review is not pending.
raises ReassignReviewFailed:
 If the reviewer is an individual and +already has a personal review.
+ +
+ + + + + +The person or team to assign to do the review. + + + + + + +
+
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +The merge proposal that is the subject of this vote + + + + + +The code review comment that contains the most recent vote. + + + + + +Date Created + + + + + +Is the pending? + + + + + +The person who originally registered this vote + + + + + +

Review type

+

Lowercase keywords describing the type of review.

+ +
+ +
+ + +

Reviewer

+

A person who you want to review this.

+ +
+ +
+
+ + + + +The merge proposal that is the subject of this vote + + + + + +The code review comment that contains the most recent vote. + + + + + +The person who originally registered this vote + + + + + +

Review type

+

Lowercase keywords describing the type of review.

+ +
+ +
+ + +

Reviewer

+

A person who you want to review this.

+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

A Commercial Subscription for a Product.

+

If the product has a licence which does not qualify for free +hosting, a subscription needs to be purchased.

+ +
+ + + + + + + + + + + + + + + + + + + + + + +
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +

Date Created

+

The date the first subscription was applied.

+ +
+ +
+ + +

Expiration Date

+

The expiration date of the subscription.

+ +
+ +
+ + +

Date Modified

+

The date the subscription was modified.

+ +
+ +
+ + +

Beginning of Subscription

+

The date the subscription starts.

+ +
+ +
+ + +

Distribution which has commercial subscription

+

Distribution for which this commercial subscription is applied.

+ +
+ +
+ + +

Active

+

Whether this subscription is active.

+ +
+ +
+ + +

Product which has commercial subscription

+

Project for which this commercial subscription is applied.

+ +
+ +
+ + +

Purchaser

+

Person who purchased the voucher.

+ +
+ +
+ + +

Registrant

+

Person who redeemed the voucher.

+ +
+ +
+
+ + + + +

Expiration Date

+

The expiration date of the subscription.

+ +
+ +
+ + +

Date Modified

+

The date the subscription was modified.

+ +
+ +
+ + +

Beginning of Subscription

+

The date the subscription starts.

+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +The country description. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The canonical link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +Description + + + + + +iso3166code2 + + + + + +iso3166code3 + + + + + +Country name + + + + + +Country title + + + + + + + + +Description + + + + + +Country name + + + + + +Country title + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +A single CVE database entry. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +Bugs related to this CVE entry. + + + + + +

CVSS

+

The CVSS vector strings from various authorities that publish it.

+ +
+ +
+ + +Date Created + + + + + +Date Made Public + + + + + +Date Modified + + + + + +

Title

+

A description of the CVE issue. This will be updated regularly from the CVE database.

+ +
+ +
+ + +

Discovered by

+

The name of person(s) or organization that discovered the CVE

+ +
+ +
+ + +

Display Name

+

A very brief name describing the ref and state.

+ +
+ +
+ + +

CVE Sequence Number

+

Should take the form XXXX-XXXX, all digits.

+ +
+ +
+ + +

Current CVE State

+

Whether or not the vulnerability has been reviewed and assigned a full CVE number, or is still considered a Candidate, or is deprecated.

+ +
+ + + + +
+ + +

Title

+

A title for the CVE

+ +
+ +
+ + +

URL

+

Return a URL to the site that has the CVE data for this CVE reference.

+ +
+ +
+
+ + + + +Date Modified + + + + + +

Title

+

A description of the CVE issue. This will be updated regularly from the CVE database.

+ +
+ +
+ + +

Display Name

+

A very brief name describing the ref and state.

+ +
+ +
+ + +

CVE Sequence Number

+

Should take the form XXXX-XXXX, all digits.

+ +
+ +
+ + +

Current CVE State

+

Whether or not the vulnerability has been reviewed and assigned a full CVE number, or is still considered a Candidate, or is deprecated.

+ +
+ + + + +
+ + +

Title

+

A title for the CVE

+ +
+ +
+ + +

URL

+

Return a URL to the site that has the CVE data for this CVE reference.

+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

An operating system distribution.

+

Launchpadlib example: retrieving the current version of a package in a +particular distroseries.

+
+ubuntu = launchpad.distributions["ubuntu"]
+archive = ubuntu.main_archive
+series = ubuntu.current_series
+print(archive.getPublishedSources(exact_match=True,
+    source_name="apport",
+    distro_series=series)[0].source_package_version)
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + +

Return all the subscriptions with the specified levels.

+ +++ + + + +
return:A sequence of IStructuralSubscription.
+ +
+ + + + + + + + + +
+ + +Return the subscription for person, if it exists. + + + + + + + + + + + + + + + + + +Is user subscribed, directly or via a team, to bug mail? + + + + + + + + + + +

Return the questions from the collection matching search criteria.

+ +++ + + + + + + + + + + + + + + + +
param search_text:
 A string that is matched against the question +title and description. If None, the search_text is not included as +a filter criteria.
param status:A sequence of QuestionStatus Items. If None or an empty +sequence, the status is not included as a filter criteria. The +default is to match all status except Expired and Invalid.
param language:An ILanguage or a sequence of ILanguage objects to +match against the question's language. If None or an empty +sequence, the language is not included as a filter criteria.
param owner:The IPerson that created the question.
param needs_attention_from:
 Selects questions that need attention +from an IPerson. These are the questions in the NEEDSINFO or +ANSWERED state owned by the person. The questions not owned by the +person but on which the person requested more information or gave +an answer and that are back in the OPEN state are also included.
param sort:An attribute of QuestionSort. If None, a default value is +used. When there is a search_text value, the default is to sort by +RELEVANCY, otherwise results are sorted NEWEST_FIRST.
+ +
+ + + + + +Search text + + + + + +Status + + + + + +Language + + + + + +Owner + + + + + +Needs attentions from + + + + + +Sort + + + + + + + + + + + + + + +
+ + +

Return the question by its id, if it is applicable to this target.

+ +++ + + + +
question_id:A question id.
+

If there is no such question number for this target, return None

+ +
+ + + + + +Question Number + + + + + + +
+ + +

Return questions similar to phrase.

+

Return a list of question similar to the provided phrase. These +questions will be found using a fuzzy search. The list is +ordered from the most similar question to the least similar question.

+ +++ + + + +
param phrase:A phrase such as the summary of a question.
+ +
+ + + + + +A phrase + + + + + + + + + +
+ + +

Return the list of Persons that provide support for a language.

+

An answer contact supports questions in their preferred languages.

+ +
+ + + + + + + + + + + + + +
+ + +

Return a list of languages spoken by at the answer contacts.

+

An answer contact is considered to speak a given language if that +language is listed as one of their preferred languages.

+ +
+ + + + + + + + + +
+ + +

Can the user add or remove the answer contact.

+

Users can add or remove themselves or one of the teams they +administered. Admins and target owners can add/remove anyone.

+ +++ + + + + + + +
param person:The IPerson that is or will be an answer contact.
param subscribed_by:
 The IPerson making the change.
+ +
+ + + + + +The user or an administered team + + + + + + +
+ + +Returns the specification with the given name, for this target, +or None. + + + + + + +The name of the specification + + + + + + + + + + + + +

Return entries in the translation import queue for this entity.

+ +++ + + + + + + + +
arg import_status:
 RosettaImportStatus DB Schema entry.
arg file_extension:
 String with the file type extension, usually 'po' +or 'pot'.
+

If one of both of 'import_status' or 'file_extension' are given, the +returned entries are filtered based on those values.

+ +
+ + + + + +

Status

+

Show only entries with this status

+ +
+ + + + + + + + +
+ + +

Filename extension

+

Show only entries with this filename suffix

+ +
+ +
+ +
+ + + + +
+ + +

Search the IBugTasks reported on this entity.

+ +++ + + + +
search_params:a BugTaskSearchParams object
+

Return an iterable of matching results.

+

Note: milestone is currently ignored for all IBugTargets +except IProduct.

+ +
+ + + + + +List of fields by which the results are ordered. + + + + + +Bug ID or search text. + + + + + +

Status

+

Show only bugs with the given status value or list of values.

+ +
+ +
+ + +

Importance

+

Show only bugs with the given importance or list of importances.

+ +
+ +
+ + +

Information Type

+

Show only bugs with the given information type or list of information types.

+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Show only bugs with patches available. + + + + + +Show only bugs associated with a CVE + + + + + +

Tags

+

String or list of strings for tags to search. To exclude, prepend a '-', e.g. '-unwantedtag'

+ +
+ +
+ + +

Tags combination

+

Search for any or all of the tags specified.

+ +
+ + + +
+ + +Omit bugs marked as duplicate, + + + + + +

Status upstream

+

Indicates the status of any remote watches associated with the bug. Possible values include: pending_bugwatch, hide_upstream, resolved_upstream, and open_upstream.

+ +
+ +
+ + +

Milestone

+

Show only bug tasks targeted to this milestone.

+ +
+ +
+ + +

Component

+

Distribution package archive grouping. E.g. main, universe, multiverse

+ +
+ +
+ + + + + + +Exclude bugs with packages specified + + + + + +Search for bugs that are linked to branches or for bugs that are not linked to branches. + + + + + + + + +Search for bugs that have been modified since the given date. + + + + + +Search for bugs that have been created since the given date. + + + + + +Search for bugs that were created before the given date. + + + + + +Omit bugs targeted to a series + + + + + +Search for bugs that are linked to blueprints or for bugs that are not linked to blueprints. + + + + + + + +
+ + + + +
+ + +

Return build records in the context it is implemented.

+

It excludes build records generated by Gina (imported from a external +repository), where IBuild.datebuilt is null and IBuild.buildstate +is BuildStatus.FULLYBUILT.

+

The result is simply not filtered if the optional filters are omitted +by call sites.

+ +++ + + + + + + + + + + + + + + + + + +
param build_state:
 optional BuildStatus value for filtering build +records;
param name:optional string for filtering build source package name. +Sub-string matching is allowed via SQL LIKE.
param pocket:optional PackagePublishingPocket value for filtering +build records;
param arch_tag:optional string for filtering build source packages +by their architecture tag;
param user:optional IPerson corresponding to the user performing +the request. It will filter out build records for which the user +have no 'view' permission.
param binary_only:
 optional boolean indicating whether only +BinaryPackageBuild objects should be returned, or more general +PackageBuild objects (which may include, for example, +SourcePackageRecipeBuild objects.
return:a result set containing IPackageBuild records ordered by +descending IPackageBuild.date_finished except when builds are +filtered by BuildStatus.NEEDSBUILD, in this case records +are ordered by descending BuildQueue.lastscore +(dispatching order).
+ +
+ + + + + +Source package name + + + + + +

Build status

+

The status of this build record

+ +
+ + + + + + + + + + + + + +
+ + +

Pocket

+

The pocket into which this entry is published

+ +
+ + + + + + +
+ +
+ + + + +
+ + +Return a milestone with the given name for this object, or None. + + + + + + +Name + + + + + + + + + + + + +

Return the distribution archive with the given name.

+

Only distribution archives are considered -- PPAs will not be found.

+ +++ + + + +
param name:The name of the archive, e.g. 'partner'
+ +
+ + + + + +Archive name + + + + + + + + + +
+ + +Return the DistroSeries which are marked as in development. + + + + + + + + + + + + + +

Return the series with the name or version given.

+ +++ + + + + +
param name_or_version:
 The IDistroSeries.name or +IDistroSeries.version.
+ +
+ + + + + +Name or version + + + + + + + + + +
+ + +Return the mirror with the given name for this distribution or None +if it's not found. + + + + + + +Name + + + + + + + + + + + + +Return the country DNS mirror for a country and content type. + + + + + + +

Location

+

The country in which this mirror is based.

+ +
+ +
+ + +

Content

+

Choose "CD Image" if this mirror contains CD images of this distribution. Choose "Archive" if this is a mirror of packages for this distribution.

+ +
+ + + +
+ +
+ + + + +
+ + +Return a DistributionSourcePackage with the given name for this +distribution, or None. + + + + + + +Package name + + + + + + + + + + + + +

Search for source packages that correspond to the given text.

+

This method just decorates the result of searchSourcePackageCaches() +to return DistributionSourcePackages.

+ +
+ + + + + +Source package name substring match + + + + + + + + + +
+ + +

Find OOPS reports between start_date and end_date.

+ +++ + + + + + + + + +
param start_date:
 Do not look in objects whose last modification time +is before this date.
param end_date:Do not look in objects whose last modification time +is after this date.
return:A set of OOPS id's - strings of the form 'OOPS-w+'.
+ +
+ + + + + +Modified after date + + + + + +Modified before date + + + + + + +
+ + +

Return a list of branches which have new tips since a date.

+

Each branch information is a tuple of (branch_unique_name, +tip_revision, (official_series*)).

+

So for each branch in the distribution, you'll get the branch unique +name, the revision id of tip, and if the branch is official for some +series, the list of series name.

+ +++ + + + + + +
param:user: If specified, shows the branches visible to that user. +if not specified, only branches visible to the anonymous user are +shown.
param since:If specified, limits results to branches modified since +that date and time.
+ +
+ + + + + +

Time of last change

+

Return branches that have new tips since this timestamp.

+ +
+ +
+ +
+ +
+ + +

Return the best mirrors to be used by someone in the given country.

+

The list of mirrors is composed by the official mirrors located in +the given country (or in the country's continent if the country +doesn't have any) plus the main mirror of that type.

+ +
+ + + + + +

Location

+

The country in which this mirror is based.

+ +
+ +
+ + +

Content

+

Choose "CD Image" if this mirror contains CD images of this distribution. Choose "Archive" if this is a mirror of packages for this distribution.

+ +
+ + + +
+ +
+ + + + +
+ + +Search for OCI projects that match the title text. + + + + + + +OCI title substring match + + + + + + + + + + + + +Return a OCIProject with the given name for this +distribution, or None. + + + + + + +OCI project name + + + + + + + + + + + + +

Add a bug subscription for this structure.

+

This method is used to create a new IStructuralSubscription for the +target. This initially has a single filter which will allow all +notifications will be sent.

+ +++ + + + + + + + +
subscriber:The IPerson who will be subscribed. If omitted, +subscribed_by will be used.
subscribed_by:The IPerson creating the subscription.
return:The new bug subscription.
+ +
+ + + + + +Person to subscribe. If omitted, the requesting user will be subscribed. + + + + + + + + + + + +
+ + +

Add a bug subscription filter for this structure.

+

This method is used to create a new IBugSubscriptionFilter for the +target. It will initially allow all notifications to be sent.

+ +++ + + + + + + + +
subscriber:The IPerson who will be subscribed. If omitted, +subscribed_by will be used.
subscribed_by:The IPerson creating the subscription.
return:The new bug subscription filter.
+ +
+ + + + + +Person to subscribe. If omitted, the requesting user will be subscribed. + + + + + + + + + + + +
+ + +

Remove a subscription to bugs from this structure.

+

This will delete all associated filters.

+ +++ + + + + + + +
subscriber:The IPerson who will be unsubscribed. If omitted, +unsubscribed_by will be used.
unsubscribed_by:
 The IPerson removing the subscription.
+ +
+ + + + + +Person to unsubscribe. If omitted, the requesting user will be unsubscribed. + + + + + + +
+ + +

Add a new answer contact.

+ +++ + + + + + + + + + + + +
param person:An IPerson.
param subscribed_by:
 The user making the change.
return:True if the person was added, False if the person already is +an answer contact.
raises AddAnswerContactError:
 When the person or team does no have a +preferred language.
+ +
+ + + + + +The user of an administered team + + + + + + +
+ + +

Remove an answer contact.

+ +++ + + + + + + + + +
param person:An IPerson.
param subscribed_by:
 The user making the change.
return:True if the person was removed, False if the person wasn't an +answer contact.
+ +
+ + + + + +The user of an administered team + + + + + + +
+ + +Create a new webhook. + + + + + + +Delivery URL + + + + + +

Active

+

Deliver details of subscribed events.

+ +
+ +
+ + +Event types + + + + + +

Secret

+

An optional string used to sign delivery bodies with HMAC-SHA1 in the X-Hub-Signature header. This must be less than 200 bytes long.

+ +
+ +
+
+
+ + + + + + +
+ + +Add tag to the official bug tags of this target. + + + + + + +The official bug tag + + + + + + + + + +Remove tag from the official bug tags of this target. + + + + + + +The official bug tag + + + + + + + + + +Create an IOCIProject for this distro. + + + + + + +

The OCI project name.

+

The name that groups a set of OCI recipes together.

+ +
+ +
+ + +

Description for this OCI project.

+

A short description of this OCI project.

+ +
+ +
+
+
+ + + + + + +
+ + +Create a new vulnerability in the distribution. + + + + + + +The status of the vulnerability. + + + + + + + + + +Person creating the vulnerability. + + + + + +Information Type. Defaults to Public. + + + + + + + + + + + +Indicates the work priority, not the severity. Defaults to Undecided. + + + + + + + + + + + + +External CVE reference corresponding to this vulnerability, if any. + + + + + +A short description of the vulnerability. + + + + + +Free-form notes for this vulnerability. + + + + + +Explains why we're ignoring this vulnerability. + + + + + +Used to explain why our importance differs from somebody else's CVSS score. + + + + + +The date this vulnerability was made public. + + + + + + + + + +Set the credentials for the OCI registry for OCI projects. + + + + + + +

The registry url.

+

The url of the OCI registry to use.

+ +
+ +
+ + +

OCI registry region.

+

The region of the OCI registry.

+ +
+ +
+ + +

Username

+

The username for the OCI registry.

+ +
+ +
+ + +

Password

+

The password for the OCI registry.

+ +
+ +
+
+
+ +
+ + +Delete any existing OCI credentials for the distribution. + + + + + + + + +
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +

Active

+

Whether or not this item is active.

+ +
+ +
+ + +The visible and active milestones associated with this object, ordered by date expected. + + + + + +All milestones associated with this object, ordered by date expected. + + + + + +

All specifications

+

A list of all specifications, regardless of status or approval or completion, for this object.

+ +
+ +
+ + +All enabled and official ARCHIVE mirrors of this Distribution. + + + + + +A sequence of the distribution's primary, partner and debug archives. + + + + + +

Branch sharing policy

+

Sharing policy for this pillar's branches.

+ +
+ + + + + + + +
+ + +

After reporting a bug, I can expect the following.

+

This message of acknowledgement will be displayed to anyone after reporting a bug.

+ +
+ +
+ + +

Helpful guidelines for reporting a bug

+

These guidelines will be shown to everyone reporting a bug and should be text or a bulleted list with your particular requirements, if any.

+ +
+ +
+ + +

Bug sharing policy

+

Sharing policy for this pillar's bugs.

+ +
+ + + + + + + +
+ + +

Bug Supervisor

+

The Launchpad id of the person or team (preferred) responsible for bug management.

+ +
+ +
+ + +All enabled and official RELEASE mirrors of this Distribution. + + + + + +

Code Administrator

+

The distribution source code administrator.

+ +
+ +
+ + +

Commercial subscriptions

+

An object which contains the timeframe and the voucher code of a subscription.

+ +
+ +
+ + +

Commercial subscription is due

+

Whether the distribution's licensing requires a new commercial subscription to use launchpad.

+ +
+ +
+ + +

Current series

+

The current development series of this distribution. Note that all maintainerships refer to the current series. When people ask about the state of packages in the distribution, we should interpret that query in the context of the currentseries.

+ +
+ +
+ + +

Date created

+

The date this distribution was registered.

+ +
+ +
+ + +

Default traversal policy

+

The type of object that /{distro}/{name} URLs for this distribution resolve to.

+ +
+ + + + +
+ + +This Distribution's derivatives + + + + + +

Description

+

Details about the distributions's work, highlights, goals, and how to contribute. Use plain text, paragraphs are preserved and URLs are linked in pages. Don't repeat the Summary.

+ +
+ +
+ + +

Alias for development series

+

If set, an alias for the current development series in this distribution.

+ +
+ +
+ + +

Display Name

+

The displayable name of the distribution.

+ +
+ +
+ + +

Web site URL

+

The distro's web site URL.

+ +
+ +
+ + +

Driver

+

The person or team responsible for decisions about features and bugs that will be targeted for any series in this distribution. Note that you can also specify a driver on each series whose permissions will be limited to that specific series.

+ +
+ +
+ + +

Homepage Content

+

The content of this distribution's home page. Edit this and it will be displayed for all the world to see. It is NOT a wiki so you cannot undo changes.

+ +
+ +
+ + +

Icon

+

A small image of exactly 14x14 pixels and at most 5kb in size, that can be used to identify this distribution. The icon will be displayed everywhere we list the distribution and link to it.

+ +
+ +
+ + +

Information Type

+

The type of data contained in this item.

+ +
+ + + + + + + +
+ + +

Logo

+

An image of exactly 64x64 pixels that will be displayed in the heading of all pages related to this distribution. It should be no bigger than 50kb in size.

+ +
+ +
+ + +Distribution Main Archive. + + + + + +

Members

+

The distro's members team.

+ +
+ +
+ + +

Mirror Administrator

+

The person or team that has the rights to review and mark this distribution's mirrors as official.

+ +
+ +
+ + +

Brand

+

A large image of exactly 192x192 pixels, that will be displayed on this distribution's home page in Launchpad. It should be no bigger than 100kb in size.

+ +
+ +
+ + +

Name

+

The distro's name.

+ +
+ +
+ + +

OCI Project Administrator

+

The person or team that has the rights to manage OCI Projects for this distribution.

+ +
+ +
+ + +People can ask questions in Launchpad Answers + + + + + +This project uses blueprints + + + + + +

Official Bug Tags

+

The list of bug tags defined as official.

+ +
+ +
+ + +Bugs in this project are tracked in Launchpad + + + + + +Code for this project is published in Bazaar branches on Launchpad + + + + + +Packages are tracked in Launchpad + + + + + +

Owner

+

The restricted team, moderated team, or person who maintains the distribution information in Launchpad.

+ +
+ +
+ + +

Distribution is confidential

+

If set, this distribution is visible only to those with access grants.

+ +
+ +
+ + +

Redirect the default traversal

+

If true, the default traversal is for migration and redirects to a different canonical URL.

+ +
+ +
+ + +

Redirect release pocket uploads

+

Redirect release pocket uploads to proposed pocket

+ +
+ +
+ + +

Registrant

+

The distro's registrant.

+ +
+ +
+ + +

Security Administrator

+

The distribution security administrator.

+ +
+ +
+ + +DistroSeries inside this Distribution + + + + + +

Blueprint sharing policy

+

Sharing policy for this project's specifications.

+ +
+ + + + + + + +
+ + +

Summary

+

A short paragraph to introduce the goals and highlights of the distribution.

+ +
+ +
+ + +Enable mirror listings and probes + + + + + +Enable PPA creation and publication + + + + + +

Title

+

The distro's title.

+ +
+ +
+ + +

Translation group

+

The translation group that helps review translations for this project or distribution. The group's role depends on the permissions policy selected below.

+ +
+ +
+ + +

Translation permissions policy

+

The policy this project or distribution uses to balance openness and control for their translations.

+ +
+ + + + + +
+ + +

Type of service for translations application

+

Where does this pillar do translations?

+ +
+ + + + + +
+ + +

Valid specifications

+

All specifications that are not obsolete. When called from an ISpecificationGoal it will also exclude the ones that have not been accepted for that goal

+ +
+ +
+ + +

VCS

+

Version control system for this distribution's code.

+ +
+ + + +
+ + +Vulnerabilities in this distribution. + + + + + +Webhooks for this target. + + + +
+ + + + +

Active

+

Whether or not this item is active.

+ +
+ +
+ + +

Branch sharing policy

+

Sharing policy for this pillar's branches.

+ +
+ + + + + + + +
+ + +

After reporting a bug, I can expect the following.

+

This message of acknowledgement will be displayed to anyone after reporting a bug.

+ +
+ +
+ + +

Helpful guidelines for reporting a bug

+

These guidelines will be shown to everyone reporting a bug and should be text or a bulleted list with your particular requirements, if any.

+ +
+ +
+ + +

Bug sharing policy

+

Sharing policy for this pillar's bugs.

+ +
+ + + + + + + +
+ + +

Bug Supervisor

+

The Launchpad id of the person or team (preferred) responsible for bug management.

+ +
+ +
+ + +

Code Administrator

+

The distribution source code administrator.

+ +
+ +
+ + +

Commercial subscriptions

+

An object which contains the timeframe and the voucher code of a subscription.

+ +
+ +
+ + +

Current series

+

The current development series of this distribution. Note that all maintainerships refer to the current series. When people ask about the state of packages in the distribution, we should interpret that query in the context of the currentseries.

+ +
+ +
+ + +

Date created

+

The date this distribution was registered.

+ +
+ +
+ + +

Default traversal policy

+

The type of object that /{distro}/{name} URLs for this distribution resolve to.

+ +
+ + + + +
+ + +

Description

+

Details about the distributions's work, highlights, goals, and how to contribute. Use plain text, paragraphs are preserved and URLs are linked in pages. Don't repeat the Summary.

+ +
+ +
+ + +

Alias for development series

+

If set, an alias for the current development series in this distribution.

+ +
+ +
+ + +

Display Name

+

The displayable name of the distribution.

+ +
+ +
+ + +

Web site URL

+

The distro's web site URL.

+ +
+ +
+ + +

Driver

+

The person or team responsible for decisions about features and bugs that will be targeted for any series in this distribution. Note that you can also specify a driver on each series whose permissions will be limited to that specific series.

+ +
+ +
+ + +

Homepage Content

+

The content of this distribution's home page. Edit this and it will be displayed for all the world to see. It is NOT a wiki so you cannot undo changes.

+ +
+ +
+ + +

Icon

+

A small image of exactly 14x14 pixels and at most 5kb in size, that can be used to identify this distribution. The icon will be displayed everywhere we list the distribution and link to it.

+ +
+ +
+ + +

Information Type

+

The type of data contained in this item.

+ +
+ + + + + + + +
+ + +

Logo

+

An image of exactly 64x64 pixels that will be displayed in the heading of all pages related to this distribution. It should be no bigger than 50kb in size.

+ +
+ +
+ + +

Members

+

The distro's members team.

+ +
+ +
+ + +

Mirror Administrator

+

The person or team that has the rights to review and mark this distribution's mirrors as official.

+ +
+ +
+ + +

Brand

+

A large image of exactly 192x192 pixels, that will be displayed on this distribution's home page in Launchpad. It should be no bigger than 100kb in size.

+ +
+ +
+ + +

Name

+

The distro's name.

+ +
+ +
+ + +

OCI Project Administrator

+

The person or team that has the rights to manage OCI Projects for this distribution.

+ +
+ +
+ + +People can ask questions in Launchpad Answers + + + + + +This project uses blueprints + + + + + +

Official Bug Tags

+

The list of bug tags defined as official.

+ +
+ +
+ + +Bugs in this project are tracked in Launchpad + + + + + +Code for this project is published in Bazaar branches on Launchpad + + + + + +Packages are tracked in Launchpad + + + + + +

Owner

+

The restricted team, moderated team, or person who maintains the distribution information in Launchpad.

+ +
+ +
+ + +

Redirect the default traversal

+

If true, the default traversal is for migration and redirects to a different canonical URL.

+ +
+ +
+ + +

Redirect release pocket uploads

+

Redirect release pocket uploads to proposed pocket

+ +
+ +
+ + +

Security Administrator

+

The distribution security administrator.

+ +
+ +
+ + +

Blueprint sharing policy

+

Sharing policy for this project's specifications.

+ +
+ + + + + + + +
+ + +

Summary

+

A short paragraph to introduce the goals and highlights of the distribution.

+ +
+ +
+ + +Enable mirror listings and probes + + + + + +Enable PPA creation and publication + + + + + +

Title

+

The distro's title.

+ +
+ +
+ + +

Translation group

+

The translation group that helps review translations for this project or distribution. The group's role depends on the permissions policy selected below.

+ +
+ +
+ + +

Translation permissions policy

+

The policy this project or distribution uses to balance openness and control for their translations.

+ +
+ + + + + +
+ + +

Type of service for translations application

+

Where does this pillar do translations?

+ +
+ + + + + +
+ + +

VCS

+

Version control system for this distribution's code.

+ +
+ + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +A mirror of a given distribution. + + + + + + + + + + + + + + + + + + + + + + + + + +Verify if a mirror can be set as a country mirror or return +False. + + + + + + + + + + +

Return this mirror's overall freshness.

+

For ARCHIVE mirrors, the overall freshness is the worst freshness of +all of this mirror's content objects (MirrorDistroArchSeries, +MirrorDistroSeriesSource or MirrorCDImageDistroSeriess).

+

For RELEASE mirrors, the overall freshness is either UP (up to +date), if the mirror contains all ISO images that it should or +UNKNOWN if it doesn't contain one or more ISO images.

+ +
+ + + + + + +
+ + +Return True if this is an official mirror. + + + + + + + + +
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +

Base URL

+

The HTTP or FTP base URL of this mirror

+ +
+ +
+ + +

Content

+

Choose "CD Image" if this mirror contains CD images of this distribution. Choose "Archive" if this is a mirror of packages for this distribution.

+ +
+ + + +
+ + +

Location

+

The country in which this mirror is based.

+ +
+ +
+ + +

Country DNS Mirror

+

Whether this is a country mirror in DNS.

+ +
+ +
+ + +

Date Created

+

The date on which this mirror was registered.

+ +
+ +
+ + +

Date reviewed

+

The date on which this mirror was last reviewed by a mirror admin.

+ +
+ +
+ + +Description + + + + + +

Organisation

+

The name of the organization hosting this mirror.

+ +
+ +
+ + +

Distribution

+

The distribution that is mirrored

+ +
+ +
+ + +This mirror was probed successfully. + + + + + +

FTP URL

+

e.g.: ftp://archive.ubuntu.com/ubuntu/

+ +
+ +
+ + +

HTTP URL

+

e.g.: http://archive.ubuntu.com/ubuntu/

+ +
+ +
+ + +HTTPS URL + + + + + +

Name

+

A short and unique name for this mirror.

+ +
+ +
+ + +Apply to be an official mirror of this distribution + + + + + +

Owner

+

The person who is set as the current administrator of thismirror.

+ +
+ +
+ + +

Reviewer

+

The person who last reviewed this mirror.

+ +
+ +
+ + +

Rsync URL

+

e.g.: rsync://archive.ubuntu.com/ubuntu/

+ +
+ +
+ + +Link Speed + + + + + + + + + + + + + + + + + + + + +

Status

+

The current status of a mirror's registration.

+ +
+ + + + + +
+ + +

Whiteboard

+

Notes on the current status of the mirror (only visible to admins and the mirror's registrant).

+ +
+ +
+
+ + + + +

Base URL

+

The HTTP or FTP base URL of this mirror

+ +
+ +
+ + +

Content

+

Choose "CD Image" if this mirror contains CD images of this distribution. Choose "Archive" if this is a mirror of packages for this distribution.

+ +
+ + + +
+ + +

Location

+

The country in which this mirror is based.

+ +
+ +
+ + +

Country DNS Mirror

+

Whether this is a country mirror in DNS.

+ +
+ +
+ + +Description + + + + + +

Organisation

+

The name of the organization hosting this mirror.

+ +
+ +
+ + +

FTP URL

+

e.g.: ftp://archive.ubuntu.com/ubuntu/

+ +
+ +
+ + +

HTTP URL

+

e.g.: http://archive.ubuntu.com/ubuntu/

+ +
+ +
+ + +HTTPS URL + + + + + +

Name

+

A short and unique name for this mirror.

+ +
+ +
+ + +Apply to be an official mirror of this distribution + + + + + +

Owner

+

The person who is set as the current administrator of thismirror.

+ +
+ +
+ + +

Rsync URL

+

e.g.: rsync://archive.ubuntu.com/ubuntu/

+ +
+ +
+ + +Link Speed + + + + + + + + + + + + + + + + + + + + +

Status

+

The current status of a mirror's registration.

+ +
+ + + + + +
+ + +

Whiteboard

+

Notes on the current status of the mirror (only visible to admins and the mirror's registrant).

+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Represents a source package in a distribution.

+

Create IDistributionSourcePackages by invoking +IDistribution.getSourcePackage().

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + +

Return the questions from the collection matching search criteria.

+ +++ + + + + + + + + + + + + + + + +
param search_text:
 A string that is matched against the question +title and description. If None, the search_text is not included as +a filter criteria.
param status:A sequence of QuestionStatus Items. If None or an empty +sequence, the status is not included as a filter criteria. The +default is to match all status except Expired and Invalid.
param language:An ILanguage or a sequence of ILanguage objects to +match against the question's language. If None or an empty +sequence, the language is not included as a filter criteria.
param owner:The IPerson that created the question.
param needs_attention_from:
 Selects questions that need attention +from an IPerson. These are the questions in the NEEDSINFO or +ANSWERED state owned by the person. The questions not owned by the +person but on which the person requested more information or gave +an answer and that are back in the OPEN state are also included.
param sort:An attribute of QuestionSort. If None, a default value is +used. When there is a search_text value, the default is to sort by +RELEVANCY, otherwise results are sorted NEWEST_FIRST.
+ +
+ + + + + +Search text + + + + + +Status + + + + + +Language + + + + + +Owner + + + + + +Needs attentions from + + + + + +Sort + + + + + + + + + + + + + + +
+ + +

Return the question by its id, if it is applicable to this target.

+ +++ + + + +
question_id:A question id.
+

If there is no such question number for this target, return None

+ +
+ + + + + +Question Number + + + + + + +
+ + +

Return questions similar to phrase.

+

Return a list of question similar to the provided phrase. These +questions will be found using a fuzzy search. The list is +ordered from the most similar question to the least similar question.

+ +++ + + + +
param phrase:A phrase such as the summary of a question.
+ +
+ + + + + +A phrase + + + + + + + + + +
+ + +

Return the list of Persons that provide support for a language.

+

An answer contact supports questions in their preferred languages.

+ +
+ + + + + + + + + + + + + +
+ + +

Return a list of languages spoken by at the answer contacts.

+

An answer contact is considered to speak a given language if that +language is listed as one of their preferred languages.

+ +
+ + + + + + + + + +
+ + +

Can the user add or remove the answer contact.

+

Users can add or remove themselves or one of the teams they +administered. Admins and target owners can add/remove anyone.

+ +++ + + + + + + +
param person:The IPerson that is or will be an answer contact.
param subscribed_by:
 The IPerson making the change.
+ +
+ + + + + +The user or an administered team + + + + + + +
+ + +

Return all the subscriptions with the specified levels.

+ +++ + + + +
return:A sequence of IStructuralSubscription.
+ +
+ + + + + + + + + +
+ + +Return the subscription for person, if it exists. + + + + + + + + + + + + + + + + + +Is user subscribed, directly or via a team, to bug mail? + + + + + + + + + + +

Search the IBugTasks reported on this entity.

+ +++ + + + +
search_params:a BugTaskSearchParams object
+

Return an iterable of matching results.

+

Note: milestone is currently ignored for all IBugTargets +except IProduct.

+ +
+ + + + + +List of fields by which the results are ordered. + + + + + +Bug ID or search text. + + + + + +

Status

+

Show only bugs with the given status value or list of values.

+ +
+ +
+ + +

Importance

+

Show only bugs with the given importance or list of importances.

+ +
+ +
+ + +

Information Type

+

Show only bugs with the given information type or list of information types.

+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Show only bugs with patches available. + + + + + +Show only bugs associated with a CVE + + + + + +

Tags

+

String or list of strings for tags to search. To exclude, prepend a '-', e.g. '-unwantedtag'

+ +
+ +
+ + +

Tags combination

+

Search for any or all of the tags specified.

+ +
+ + + +
+ + +Omit bugs marked as duplicate, + + + + + +

Status upstream

+

Indicates the status of any remote watches associated with the bug. Possible values include: pending_bugwatch, hide_upstream, resolved_upstream, and open_upstream.

+ +
+ +
+ + +

Milestone

+

Show only bug tasks targeted to this milestone.

+ +
+ +
+ + +

Component

+

Distribution package archive grouping. E.g. main, universe, multiverse

+ +
+ +
+ + + + + + +Exclude bugs with packages specified + + + + + +Search for bugs that are linked to branches or for bugs that are not linked to branches. + + + + + + + + +Search for bugs that have been modified since the given date. + + + + + +Search for bugs that have been created since the given date. + + + + + +Search for bugs that were created before the given date. + + + + + +Omit bugs targeted to a series + + + + + +Search for bugs that are linked to blueprints or for bugs that are not linked to blueprints. + + + + + + + +
+ + + + +
+ + +

Returns all merge proposals of a given status.

+ +++ + + + + + + + + + + + +
param status:A list of statuses to filter with.
param visible_by_user:
 Normally the user who is asking.
param eager_load:
 If True, load related objects for the whole +collection.
returns:A list of IBranchMergeProposal.
+ +
+ + + + + +A list of merge proposal statuses to filter by. + + + + + + + + + +
+ + +

Returns all branches with the given lifecycle status.

+ +++ + + + + + + + + + + + + + + +
param status:A list of statuses to filter with.
param visible_by_user:
 Normally the user who is asking.
param modified_since:
 If set, filters the branches being returned +to those that have been modified since the specified date/time.
param eager_load:
 If True load related objects for the whole +collection.
returns:A list of IBranch.
+ +
+ + + + + +A list of branch lifecycle statuses to filter by. + + + + + +Limit the branches to those modified since this date. + + + + + + + + + +
+ + +

Add a new answer contact.

+ +++ + + + + + + + + + + + +
param person:An IPerson.
param subscribed_by:
 The user making the change.
return:True if the person was added, False if the person already is +an answer contact.
raises AddAnswerContactError:
 When the person or team does no have a +preferred language.
+ +
+ + + + + +The user of an administered team + + + + + + +
+ + +

Remove an answer contact.

+ +++ + + + + + + + + +
param person:An IPerson.
param subscribed_by:
 The user making the change.
return:True if the person was removed, False if the person wasn't an +answer contact.
+ +
+ + + + + +The user of an administered team + + + + + + +
+ + +

Add a bug subscription for this structure.

+

This method is used to create a new IStructuralSubscription for the +target. This initially has a single filter which will allow all +notifications will be sent.

+ +++ + + + + + + + +
subscriber:The IPerson who will be subscribed. If omitted, +subscribed_by will be used.
subscribed_by:The IPerson creating the subscription.
return:The new bug subscription.
+ +
+ + + + + +Person to subscribe. If omitted, the requesting user will be subscribed. + + + + + + + + + + + +
+ + +

Add a bug subscription filter for this structure.

+

This method is used to create a new IBugSubscriptionFilter for the +target. It will initially allow all notifications to be sent.

+ +++ + + + + + + + +
subscriber:The IPerson who will be subscribed. If omitted, +subscribed_by will be used.
subscribed_by:The IPerson creating the subscription.
return:The new bug subscription filter.
+ +
+ + + + + +Person to subscribe. If omitted, the requesting user will be subscribed. + + + + + + + + + + + +
+ + +

Remove a subscription to bugs from this structure.

+

This will delete all associated filters.

+ +++ + + + + + + +
subscriber:The IPerson who will be unsubscribed. If omitted, +unsubscribed_by will be used.
unsubscribed_by:
 The IPerson removing the subscription.
+ +
+ + + + + +Person to unsubscribe. If omitted, the requesting user will be unsubscribed. + + + + + + +
+ + +Create a new webhook. + + + + + + +Delivery URL + + + + + +

Active

+

Deliver details of subscribed events.

+ +
+ +
+ + +Event types + + + + + +

Secret

+

An optional string used to sign delivery bodies with HMAC-SHA1 in the X-Hub-Signature header. This must be less than 200 bytes long.

+ +
+ +
+
+
+ + + + + + +
+ + +

Create a new code import.

+ +++ + + + + + + + + + + + + + + + + + + + + + + + +
param registrant:
 The IPerson to record as the registrant of the +import.
param branch_name:
 The name of the branch or repository to create.
param rcs_type:The type of the foreign VCS.
param target_rcs_type:
 The type of the branch or repository to +create (Bazaar or Git).
param url:The URL to import from if the VCS type uses a single URL +(i.e. isn't CVS).
param cvs_root:The CVSROOT for a CVS import.
param cvs_module:
 The module to import for a CVS import.
param owner:Who should own the created branch or repository, or +None for it to be the same as the registrant, or the caller over +the API.
returns:An instance of ICodeImport.
+ +
+ + + + + +Name of branch to create + + + + + + + + + + + + + + + + + + + + + +Foreign VCS URL + + + + + +CVS root URL + + + + + +CVS module to import + + + + + +Owner of the resulting branch + + + + + + + + + + + +
+
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +

After reporting a bug, I can expect the following.

+

This message of acknowledgement will be displayed to anyone after reporting a bug.

+ +
+ +
+ + +

Helpful guidelines for reporting a bug

+

These guidelines will be shown to everyone reporting a bug and should be text or a bulleted list with your particular requirements, if any.

+ +
+ +
+ + +Display name for this package. + + + + + +The distribution. + + + + + +The source package name as text + + + + + +

Official Bug Tags

+

The list of bug tags defined as official.

+ +
+ +
+ + +Title for this package. + + + + + +The upstream product to which this package is linked. + + + + + +Webhooks for this target. + + + +
+ + + + +

After reporting a bug, I can expect the following.

+

This message of acknowledgement will be displayed to anyone after reporting a bug.

+ +
+ +
+ + +

Helpful guidelines for reporting a bug

+

These guidelines will be shown to everyone reporting a bug and should be text or a bulleted list with your particular requirements, if any.

+ +
+ +
+ + +The distribution. + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +An architecture for a distroseries. + + + + + + + + + + + + + + + + + + + + + + + + + +

Return build records in the context it is implemented.

+

It excludes build records generated by Gina (imported from a external +repository), where IBuild.datebuilt is null and IBuild.buildstate +is BuildStatus.FULLYBUILT.

+

The result is simply not filtered if the optional filters are omitted +by call sites.

+ +++ + + + + + + + + + + + + + + + + + +
param build_state:
 optional BuildStatus value for filtering build +records;
param name:optional string for filtering build source package name. +Sub-string matching is allowed via SQL LIKE.
param pocket:optional PackagePublishingPocket value for filtering +build records;
param arch_tag:optional string for filtering build source packages +by their architecture tag;
param user:optional IPerson corresponding to the user performing +the request. It will filter out build records for which the user +have no 'view' permission.
param binary_only:
 optional boolean indicating whether only +BinaryPackageBuild objects should be returned, or more general +PackageBuild objects (which may include, for example, +SourcePackageRecipeBuild objects.
return:a result set containing IPackageBuild records ordered by +descending IPackageBuild.date_finished except when builds are +filtered by BuildStatus.NEEDSBUILD, in this case records +are ordered by descending BuildQueue.lastscore +(dispatching order).
+ +
+ + + + + +Source package name + + + + + +

Build status

+

The status of this build record

+ +
+ + + + + + + + + + + + + +
+ + +

Pocket

+

The pocket into which this entry is published

+ +
+ + + + + + +
+ +
+ + + + +
+ + +

Return the chroot URL for this series, pocket, and image type.

+

The pocket defaults to "Release"; the image type defaults to "Chroot +tarball".

+ +
+ + + + + + + + + + + + + + + + + + + + + +
+ + +Return applicable hashes for the current chroot of this pocket. + + + + + + + + + + + + + + + + + + + + + + + + + +

Get the filter for packages to build for this architecture, if any.

+

Packages are normally built for all available architectures, subject +to any constraints in their Architecture field. If a filter is +set, then it applies the additional constraint that packages not +included by the filter will not be built for this architecture.

+ +
+ + + + + + + + + +
+ + +

Set the chroot tarball used for builds in this architecture.

+

The SHA-1 checksum must match the chroot file.

+

The pocket defaults to "Release"; the image type defaults to "Chroot +tarball".

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +

Set the chroot tarball from a live filesystem build.

+

The pocket defaults to "Release"; the image type defaults to "Chroot +tarball".

+ +
+ + + + + +Live filesystem build + + + + + +Filename + + + + + + + + + + + + + + + + + + + + + +
+ + +

Remove the chroot tarball used for builds in this architecture.

+

The pocket defaults to "Release"; the image type defaults to "Chroot +tarball".

+ +
+ + + + + + + + + + + + + + + + + + + + + +
+ + +

Set a filter for packages to build for this architecture.

+

Packages are normally built for all available architectures, subject +to any constraints in their Architecture field. If a filter is +set, then it applies the additional constraint that packages not +included by the filter will not be built for this architecture.

+

If the sense of the filter is "Include", then the filter only +includes packages in the given package set. If the sense of the +filter is "Exclude", then the filter only includes packages not in +the given package set.

+

Later changes to the given package set will also affect any filters +using it.

+ +++ + + + + + + + + +
param packageset:
 An IPackageset to use as a filter.
param sense:A DistroArchSeriesFilterSense item indicating +whether the filter includes or excludes packages.
param creator:The IPerson who is creating this filter.
+ +
+ + + + + +Package set + + + + + +Sense + + + + + + + + +
+ + +

Remove any filter for packages to build for this architecture.

+

This causes packages to be built for this architecture when they +might previously have been filtered, subject to any constraints in +their Architecture field.

+ +
+ + + + + + +
+
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +

Architecture Tag

+

The architecture tag, or short piece of text that identifies this architecture. All binary packages in the archive will use this tag in their filename. Please get it correct. It should really never be changed!

+ +
+ +
+ + +

Build chroot URL

+

The URL to the current build chroot for this distroarchseries.

+ +
+ +
+ + +

Display name

+

The display name of this distroarchseries.

+ +
+ +
+ + +The context distroseries + + + + + +

Enabled

+

Whether or not this DistroArchSeries is enabled for build creation and publication.

+ +
+ +
+ + +

Is Nominated Arch Independent

+

True if this distroarchseries is the NominatedArchIndep one.

+ +
+ +
+ + +

Main Archive

+

The main archive of the distroarchseries.

+ +
+ +
+ + +

Official Support

+

Indicate whether or not this port has official support from the vendor of the distribution.

+ +
+ +
+ + +The person who registered this port. + + + + + +

Package Count

+

A cache of the number of packages published in the RELEASE pocket of this port.

+ +
+ +
+ + +Processor + + + + + +

PPA support available

+

Indicate whether or not this port has support for building PPA packages.

+ +
+ +
+ + +

Title

+

The title of this distroarchseries.

+ +
+ +
+
+ + + + +

Architecture Tag

+

The architecture tag, or short piece of text that identifies this architecture. All binary packages in the archive will use this tag in their filename. Please get it correct. It should really never be changed!

+ +
+ +
+ + +

Display name

+

The display name of this distroarchseries.

+ +
+ +
+ + +The context distroseries + + + + + +

Enabled

+

Whether or not this DistroArchSeries is enabled for build creation and publication.

+ +
+ +
+ + +

Is Nominated Arch Independent

+

True if this distroarchseries is the NominatedArchIndep one.

+ +
+ +
+ + +

Main Archive

+

The main archive of the distroarchseries.

+ +
+ +
+ + +

Official Support

+

Indicate whether or not this port has official support from the vendor of the distribution.

+ +
+ +
+ + +The person who registered this port. + + + + + +

Package Count

+

A cache of the number of packages published in the RELEASE pocket of this port.

+ +
+ +
+ + +

Title

+

The title of this distroarchseries.

+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

A filter for packages to be included in or excluded from a DAS.

+

Since package sets can include other package sets, a single package set +is flexible enough for this. However, one might reasonably want to +either include some packages ("this architecture is obsolescent or +experimental and we only want to build a few packages for it") or +exclude some packages ("this architecture can't handle some packages so +we want to make them go away centrally").

+ +
+ + + + + + + + + + + + + + + + + + + + + + +
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +

Creator

+

The user who created this filter.

+ +
+ +
+ + +

Date created

+

The time when this filter was created.

+ +
+ +
+ + +

Date last modified

+

The time when this filter was last modified.

+ +
+ +
+ + +

Distro arch series

+

The distro arch series that this filter is for.

+ +
+ +
+ + +

Package set

+

The package set to be included in or excluded from this distro arch series.

+ +
+ +
+ + +

Sense

+

Whether the filter represents packages to include or exclude from the distro arch series.

+ +
+ + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +A comment for a distroseries difference record. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +

Comment text

+

The comment text for the related distro series difference.

+ +
+ +
+ + +The author of the comment. + + + + + +Comment date. + + + + + +

Source package name

+

Name of the source package that this comment is for.

+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +An interface for a package difference between two distroseries. + + + + + + + + + + + + + + + + + + + + + + + + + +

Blocklists this version or all versions of this source package and +adds a comment on this difference.

+ +++ + + + + + + + + + + +
param commenter:
 The requestor IPerson.
param comment:The comment string.
param all:Indicates whether all versions of this package should +be blocklisted or just the current (default).
return:The created DistroSeriesDifferenceComment object.
+ +
+ + + + + +All + + + + + +Comment text + + + + + + +
+ + +

Removes this difference from the blocklist and adds a comment on +this difference.

+

The status will be updated based on the versions.

+ +++ + + + + + + + + +
param commenter:
 The requestor IPerson.
param comment:The comment string.
return:The created DistroSeriesDifferenceComment object.
+ +
+ + + + + +Comment text + + + + + + +
+ + +Add a comment on this difference. + + + + + + +Comment text + + + + + + + + + +

Requests IPackageDiffs for the derived and parent version.

+ +++ + + + + +
raises DistroSeriesDifferenceError:
 When package diffs +cannot be requested.
+ +
+ + + + + + +
+
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +

Base version

+

The common base version of the package for differences with different versions in the parent and derived series.

+ +
+ +
+ + +

Derived series

+

The distribution series which identifies the derived series with the difference.

+ +
+ +
+ + +

Package diff status

+

The status of the diff between the base version and the derived version.

+ +
+ + + + +
+ + +

Package diff url

+

The url for the diff between the base version and the derived version.

+ +
+ +
+ + +

Parent package diff status

+

The status of the diff between the base version and the parent version.

+ +
+ + + + +
+ + +

Parent package diff url

+

The url for the diff between the base version and the parent version.

+ +
+ +
+ + +

Parent series

+

The distribution series which identifies the parent series with the difference.

+ +
+ +
+ + +

Parent source version

+

The version of the most recent source publishing in the parent series.

+ +
+ +
+ + +

Source version

+

The version of the most recent source publishing in the derived series.

+ +
+ +
+ + +Source Package Name + + + + + +

Distro series difference status.

+

The current status of this difference.

+ +
+ + + + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +A series of an operating system distribution. + + + + + + + + + + + + + + + + + + + + + + + + + +

Return all the subscriptions with the specified levels.

+ +++ + + + +
return:A sequence of IStructuralSubscription.
+ +
+ + + + + + + + + +
+ + +Return the subscription for person, if it exists. + + + + + + + + + + + + + + + + + +Is user subscribed, directly or via a team, to bug mail? + + + + + + + + + + +

Return entries in the translation import queue for this entity.

+ +++ + + + + + + + +
arg import_status:
 RosettaImportStatus DB Schema entry.
arg file_extension:
 String with the file type extension, usually 'po' +or 'pot'.
+

If one of both of 'import_status' or 'file_extension' are given, the +returned entries are filtered based on those values.

+ +
+ + + + + +

Status

+

Show only entries with this status

+ +
+ + + + + + + + +
+ + +

Filename extension

+

Show only entries with this filename suffix

+ +
+ +
+ +
+ + + + +
+ + +Returns the specification with the given name, for this target, +or None. + + + + + + +The name of the specification + + + + + + + + + + + + +

Search the IBugTasks reported on this entity.

+ +++ + + + +
search_params:a BugTaskSearchParams object
+

Return an iterable of matching results.

+

Note: milestone is currently ignored for all IBugTargets +except IProduct.

+ +
+ + + + + +List of fields by which the results are ordered. + + + + + +Bug ID or search text. + + + + + +

Status

+

Show only bugs with the given status value or list of values.

+ +
+ +
+ + +

Importance

+

Show only bugs with the given importance or list of importances.

+ +
+ +
+ + +

Information Type

+

Show only bugs with the given information type or list of information types.

+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Show only bugs with patches available. + + + + + +Show only bugs associated with a CVE + + + + + +

Tags

+

String or list of strings for tags to search. To exclude, prepend a '-', e.g. '-unwantedtag'

+ +
+ +
+ + +

Tags combination

+

Search for any or all of the tags specified.

+ +
+ + + +
+ + +Omit bugs marked as duplicate, + + + + + +

Status upstream

+

Indicates the status of any remote watches associated with the bug. Possible values include: pending_bugwatch, hide_upstream, resolved_upstream, and open_upstream.

+ +
+ +
+ + +

Milestone

+

Show only bug tasks targeted to this milestone.

+ +
+ +
+ + +

Component

+

Distribution package archive grouping. E.g. main, universe, multiverse

+ +
+ +
+ + + + + + +Exclude bugs with packages specified + + + + + +Search for bugs that are linked to branches or for bugs that are not linked to branches. + + + + + + + + +Search for bugs that have been modified since the given date. + + + + + +Search for bugs that have been created since the given date. + + + + + +Search for bugs that were created before the given date. + + + + + +Omit bugs targeted to a series + + + + + +Search for bugs that are linked to blueprints or for bugs that are not linked to blueprints. + + + + + + + +
+ + + + +
+ + +

Return an iterator over all its translation templates.

+

The returned templates are either obsolete or current.

+ +++ + + + +
return:A sequence of IPOTemplate.
+ +
+ + + + + + + + + +
+ + +

Return build records in the context it is implemented.

+

It excludes build records generated by Gina (imported from a external +repository), where IBuild.datebuilt is null and IBuild.buildstate +is BuildStatus.FULLYBUILT.

+

The result is simply not filtered if the optional filters are omitted +by call sites.

+ +++ + + + + + + + + + + + + + + + + + +
param build_state:
 optional BuildStatus value for filtering build +records;
param name:optional string for filtering build source package name. +Sub-string matching is allowed via SQL LIKE.
param pocket:optional PackagePublishingPocket value for filtering +build records;
param arch_tag:optional string for filtering build source packages +by their architecture tag;
param user:optional IPerson corresponding to the user performing +the request. It will filter out build records for which the user +have no 'view' permission.
param binary_only:
 optional boolean indicating whether only +BinaryPackageBuild objects should be returned, or more general +PackageBuild objects (which may include, for example, +SourcePackageRecipeBuild objects.
return:a result set containing IPackageBuild records ordered by +descending IPackageBuild.date_finished except when builds are +filtered by BuildStatus.NEEDSBUILD, in this case records +are ordered by descending BuildQueue.lastscore +(dispatching order).
+ +
+ + + + + +Source package name + + + + + +

Build status

+

The status of this build record

+ +
+ + + + + + + + + + + + + +
+ + +

Pocket

+

The pocket into which this entry is published

+ +
+ + + + + + +
+ +
+ + + + +
+ + +Return the distroarchseries for this distroseries with the +given architecturetag. + + + + + + +The architecture tag + + + + + + + + + + + + +

Return a source package in this distro series by name.

+

The name given may be a string or an ISourcePackageName-providing +object. The source package may not be published in the distro series.

+ +
+ + + + + +The name of the source package + + + + + + + + + +
+ + +

Get package upload records for this distribution series.

+ +++ + + + + + + + + + + + + + + + + + + + + + + +
param status:Filter results by this PackageUploadStatus, or list +of statuses.
param created_since_date:
 If specified, only returns items uploaded +since the timestamp supplied.
param archive:Filter results for this IArchive.
param pocket:Filter results by this PackagePublishingPocket or a +list of PackagePublishingPocket.
param custom_type:
 Filter results by this +PackageUploadCustomFormat.
param name:Filter results by this file name or package name.
param version:Filter results by this version number string.
param exact_match:
 If True, look for exact string matches on the +name and version filters. If False, look for a substring +match so that e.g. a package "kspreadsheetplusplus" would match +the search string "spreadsheet". Defaults to False.
return:A result set containing IPackageUpload.
+ +
+ + + + + +

Created Since Timestamp

+

Return items that are more recent than this timestamp.

+ +
+ +
+ + +

Package Upload Status

+

Return only items that have this status.

+ +
+ + + + + + +
+ + +

Archive

+

Return only items for this archive.

+ +
+ +
+ + +

Pocket

+

Return only items targeted to this pocket

+ +
+ + + + + + +
+ + +

Custom Type

+

Return only items with custom files of this type.

+ +
+ + + + + + + + + +
+ + +Package or file name + + + + + +Package version + + + + + +

Exact match

+

Whether to filter name and version by exact matching.

+ +
+ +
+ +
+ + + + +
+ + +Get all DistroSeries derived from this one. + + + + + + + + + + + + + +Get all parent DistroSeries. + + + + + + + + + + + + + +

Return the differences between this series and the specified +parent_series (or all the parent series if parent_series is None).

+ +++ + + + + + + + + + + + + + + + +
param parent_series:
 The parent series for which the differences +should be returned. All parents are considered if this is None.
param difference_type:
 The type of the differences to return.
param source_package_name_filter:
 A package name to use as a filter +for the differences.
param status:The status of the differences to return.
param child_version_higher:
 Only return differences for which the +child's version is higher than the parent's version.
+ +
+ + + + + +The parent series to consider. + + + + + +Only return differences of this type. + + + + + + + + +Only return differences for packages matching this name. + + + + + +Only return differences of this status. + + + + + + + + + +Only return differences for which the child's version is higher than the parent's. + + + + + + + + + +
+ + +

Get IDistroSeriesDifferenceComment items.

+ +++ + + + + + + + + +
param since:Ignore comments older than this timestamp.
param source_package_name:
 Return only comments for a source package +with this name.
return:A Storm result set of IDistroSeriesDifferenceComment +objects for this distroseries, ordered from oldest to newest +comment.
+ +
+ + + + + +

Minimum creation timestamp

+

Ignore comments that are older than this.

+ +
+ +
+ + +

Name of source package

+

Only return comments for this source package.

+ +
+ +
+ +
+ + + + +
+ + +

Return statistics for translation templates in this series.

+

The return value is a list of dicts for each template in the series, +each of which has this form:

+
+{
+    "sourcepackage": ...,
+    "translation_domain": ...,
+    "name": ...,
+    "total": ...,
+    "enabled": ...,
+    "languagepack": ...,
+    "priority": ...,
+    "date_last_updated": ...,
+}
+
+ +
+ + + + + + +
+ + +

Add a bug subscription for this structure.

+

This method is used to create a new IStructuralSubscription for the +target. This initially has a single filter which will allow all +notifications will be sent.

+ +++ + + + + + + + +
subscriber:The IPerson who will be subscribed. If omitted, +subscribed_by will be used.
subscribed_by:The IPerson creating the subscription.
return:The new bug subscription.
+ +
+ + + + + +Person to subscribe. If omitted, the requesting user will be subscribed. + + + + + + + + + + + +
+ + +

Add a bug subscription filter for this structure.

+

This method is used to create a new IBugSubscriptionFilter for the +target. It will initially allow all notifications to be sent.

+ +++ + + + + + + + +
subscriber:The IPerson who will be subscribed. If omitted, +subscribed_by will be used.
subscribed_by:The IPerson creating the subscription.
return:The new bug subscription filter.
+ +
+ + + + + +Person to subscribe. If omitted, the requesting user will be subscribed. + + + + + + + + + + + +
+ + +

Remove a subscription to bugs from this structure.

+

This will delete all associated filters.

+ +++ + + + + + + +
subscriber:The IPerson who will be unsubscribed. If omitted, +unsubscribed_by will be used.
unsubscribed_by:
 The IPerson removing the subscription.
+ +
+ + + + + +Person to unsubscribe. If omitted, the requesting user will be unsubscribed. + + + + + + +
+ + +Create a new milestone for this DistroSeries. + + + + + + +

Name

+

Only letters, numbers, and simple punctuation are allowed.

+ +
+ +
+ + +

Date Targeted

+

Example: 2005-11-24

+ +
+ +
+ + +

Summary

+

A summary of the features and status of this milestone.

+ +
+ +
+ + +

Code name

+

An alternative name for the milestone.

+ +
+ +
+
+
+ + + + + + +
+ + +

Initialize this series from parents.

+

This method performs checks and then creates a job to populate +the new distroseries.

+ +++ + + + + + + + + + + + + + + + + + + + + + + +
param parents:The list of parent ids this series will derive +from.
param architectures:
 The architectures to copy to the derived +series. If not specified, all of the architectures are copied.
param archindep_archtag:
 The architecture tag used to build +architecture-independent packages. If not specified, one from +the parents' will be used.
param packagesets:
 The packagesets to copy to the derived series. +If not specified, all of the packagesets are copied.
param rebuild:Whether binaries will be copied to the derived +series. If it's true, they will not be, and if it's false, they +will be.
param overlays:A list of booleans indicating, for each parent, if +the parent/child relationship should be an overlay.
param overlay_pockets:
 The list of pockets names to use for overlay +relationships.
param overlay_components:
 The list of components names to use for +overlay relationships.
+ +
+ + + + + +The list of parents to derive from. + + + + + +The list of architectures to copy to the derived distroseries. + + + + + +Architecture tag to build architecture-independent packages. + + + + + +The list of packagesets to copy to the derived distroseries + + + + + +If binaries will be copied to the derived distroseries. + + + + + +The list of booleans indicating, for each parent, if the parent/child relationship should be an overlay. + + + + + +The list of overlay pockets. + + + + + +The list of overlay components. + + + + + + +
+
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +

Active

+

Whether or not this series is stable and supported, or under current development. This excludes series which are experimental or obsolete.

+ +
+ +
+ + +The visible and active milestones associated with this object, ordered by date expected. + + + + + +

Advertise by-hash directories

+

Advertise by-hash directories with a flag in the Release file so +that apt uses them by default. Only effective if +publish_by_hash is also set.

+ +
+ +
+ + +All milestones associated with this object, ordered by date expected. + + + + + +

All specifications

+

A list of all specifications, regardless of status or approval or completion, for this object.

+ +
+ +
+ + +

Enabled architectures

+

All architectures in this series with the 'enabled' flag set.

+ +
+ +
+ + +

Don't upgrade to backports automatically

+

Set NotAutomatic: yes and ButAutomaticUpgrades: yes in Release +files generated for the backports pocket. This tells apt to +automatically upgrade within backports, but not into it.

+ +
+ +
+ + +

After reporting a bug, I can expect the following.

+

This message of acknowledgement will be displayed to anyone after reporting a bug.

+ +
+ +
+ + +

Helpful guidelines for reporting a bug

+

These guidelines will be shown to everyone reporting a bug and should be text or a bulleted list with your particular requirements, if any.

+ +
+ +
+ + +

Email changes to

+

The mailing list or other email address that Launchpad should notify about new uploads.

+ +
+ +
+ + +The series component names + + + + + +The date this series was registered. + + + + + +Date released + + + + + +

Description

+

A detailed description of this series, with information on the architectures covered, the availability of security updates and any other relevant information.

+ +
+ +
+ + +

Display name

+

The series displayname.

+ +
+ +
+ + +

Distribution

+

The distribution for which this is a series.

+ +
+ +
+ + +

Driver

+

The person or team responsible for decisions about features and bugs that will be targeted to this series of the distribution.

+ +
+ +
+ + +A list of the people or teams who are drivers for this series. This list is made up of any drivers or owners from this series and the parent drivers. + + + + + +

Series full name

+

The series full name, e.g. Ubuntu Warty

+ +
+ +
+ + +

Include long descriptions in Packages rather than in Translation-en

+

If True, write long descriptions to the per-architecture +Packages files; if False, write them to a Translation-en +file common across architectures instead. Using a common +file reduces the bandwidth footprint of enabling multiarch +on clients, which requires downloading Packages files for +multiple architectures.

+ +
+ +
+ + +

Compression types to use for published index files

+

A list of compression types to use for published index files +(Packages, Sources, etc.).

+ +
+ +
+ + +

Request a full language pack export

+

Whether next language pack generation will be a full export. This +information is useful when update packs are too big and want to +merge all those changes in the base pack.

+ +
+ +
+ + +Distribution Main Archive + + + + + +

Name

+

The name of this series.

+ +
+ +
+ + +DistroArchSeries designed to build architecture-independent packages within this distroseries context. + + + + + +

Official Bug Tags

+

The list of bug tags defined as official.

+ +
+ +
+ + +

Owning team of the derived series

+

This attribute mirrors the owner of the distribution.

+ +
+ +
+ + +

Parent series

+

The series from which this one was branched.

+ +
+ +
+ + +

Don't upgrade to proposed updates automatically

+

Set NotAutomatic: yes and ButAutomaticUpgrades: yes in Release +files generated for the proposed pocket. This tells apt to +automatically upgrade within proposed, but not into it.

+ +
+ +
+ + +

Publish by-hash directories

+

Publish archive index files in by-hash directories so that apt +can retrieve them based on their hash, avoiding race conditions +between InRelease and other files during mirror updates.

+ +
+ +
+ + +

Publish I18n index

+

Publish archive i18n/Index file, which is believed to be unused.

+ +
+ +
+ + +Registrant + + + + + +Status + + + + + + + + + + + + +

Strict dependencies of supported components

+

If True, packages in supported components (main and restricted) +may not build-depend on packages in unsupported components. Do +not rely on the name of this attribute, even for reading; it is +currently subject to change.

+ +
+ +
+ + +The series pocket names + + + + + +

Summary

+

A single paragraph that explains the goals of of this series and the intended users. For example: "The 2.0 series of Apache represents the current stable series, and is recommended for all new deployments".

+ +
+ +
+ + +

Supported

+

Whether or not this series is currently supported.

+ +
+ +
+ + +

Title

+

The title of this series. It should be distinctive and designed to look good at the top of a page.

+ +
+ +
+ + +

Type of service for translations application

+

Where does this pillar do translations?

+ +
+ + + + + +
+ + +

Valid specifications

+

All specifications that are not obsolete. When called from an ISpecificationGoal it will also exclude the ones that have not been accepted for that goal

+ +
+ +
+ + +

Version

+

The version string for this series.

+ +
+ +
+
+ + + + +

Active

+

Whether or not this series is stable and supported, or under current development. This excludes series which are experimental or obsolete.

+ +
+ +
+ + +

Advertise by-hash directories

+

Advertise by-hash directories with a flag in the Release file so +that apt uses them by default. Only effective if +publish_by_hash is also set.

+ +
+ +
+ + +

Don't upgrade to backports automatically

+

Set NotAutomatic: yes and ButAutomaticUpgrades: yes in Release +files generated for the backports pocket. This tells apt to +automatically upgrade within backports, but not into it.

+ +
+ +
+ + +

After reporting a bug, I can expect the following.

+

This message of acknowledgement will be displayed to anyone after reporting a bug.

+ +
+ +
+ + +

Helpful guidelines for reporting a bug

+

These guidelines will be shown to everyone reporting a bug and should be text or a bulleted list with your particular requirements, if any.

+ +
+ +
+ + +

Email changes to

+

The mailing list or other email address that Launchpad should notify about new uploads.

+ +
+ +
+ + +The date this series was registered. + + + + + +Date released + + + + + +

Description

+

A detailed description of this series, with information on the architectures covered, the availability of security updates and any other relevant information.

+ +
+ +
+ + +

Display name

+

The series displayname.

+ +
+ +
+ + +

Distribution

+

The distribution for which this is a series.

+ +
+ +
+ + +

Driver

+

The person or team responsible for decisions about features and bugs that will be targeted to this series of the distribution.

+ +
+ +
+ + +

Series full name

+

The series full name, e.g. Ubuntu Warty

+ +
+ +
+ + +

Include long descriptions in Packages rather than in Translation-en

+

If True, write long descriptions to the per-architecture +Packages files; if False, write them to a Translation-en +file common across architectures instead. Using a common +file reduces the bandwidth footprint of enabling multiarch +on clients, which requires downloading Packages files for +multiple architectures.

+ +
+ +
+ + +

Compression types to use for published index files

+

A list of compression types to use for published index files +(Packages, Sources, etc.).

+ +
+ +
+ + +

Request a full language pack export

+

Whether next language pack generation will be a full export. This +information is useful when update packs are too big and want to +merge all those changes in the base pack.

+ +
+ +
+ + +Distribution Main Archive + + + + + +

Name

+

The name of this series.

+ +
+ +
+ + +DistroArchSeries designed to build architecture-independent packages within this distroseries context. + + + + + +

Don't upgrade to proposed updates automatically

+

Set NotAutomatic: yes and ButAutomaticUpgrades: yes in Release +files generated for the proposed pocket. This tells apt to +automatically upgrade within proposed, but not into it.

+ +
+ +
+ + +

Publish by-hash directories

+

Publish archive index files in by-hash directories so that apt +can retrieve them based on their hash, avoiding race conditions +between InRelease and other files during mirror updates.

+ +
+ +
+ + +

Publish I18n index

+

Publish archive i18n/Index file, which is believed to be unused.

+ +
+ +
+ + +Registrant + + + + + +Status + + + + + + + + + + + + +

Strict dependencies of supported components

+

If True, packages in supported components (main and restricted) +may not build-depend on packages in unsupported components. Do +not rely on the name of this attribute, even for reading; it is +currently subject to change.

+ +
+ +
+ + +

Summary

+

A single paragraph that explains the goals of of this series and the intended users. For example: "The 2.0 series of Apache represents the current stable series, and is recommended for all new deployments".

+ +
+ +
+ + +

Supported

+

Whether or not this series is currently supported.

+ +
+ +
+ + +

Title

+

The title of this series. It should be distinctive and designed to look good at the top of a page.

+ +
+ +
+ + +

Type of service for translations application

+

Where does this pillar do translations?

+ +
+ + + + + +
+ + +

Version

+

The version string for this series.

+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +The object that stores the IPerson's emails. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +Email Address + + + + + +Person + + + + + + + + +Person + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

A document containing the answer to a commonly asked question.

+

The answer can be in the document itself or can be hosted on a separate +web site and referred to by URL.

+ +
+ + + + + + + + + + + + + + + + + + + + + + +
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +

Content

+

The answer for this FAQ in plain text. You may choose to include a URL to an external FAQ.

+ +
+ +
+ + +Created + + + + + +Last Updated + + + + + +

FAQ Number

+

The unique number identifying the FAQ in Launchpad.

+ +
+ +
+ + +

Keywords

+

One or more terms that relate to this FAQ.

+ +
+ +
+ + +

Last Updated By

+

The last person who modified the document.

+ +
+ +
+ + +

Target

+

Product or distribution containing this FAQ.

+ +
+ +
+ + +

Title

+

The title describing this FAQ, often a question.

+ +
+ +
+
+ + + + +

Content

+

The answer for this FAQ in plain text. You may choose to include a URL to an external FAQ.

+ +
+ +
+ + +

Keywords

+

One or more terms that relate to this FAQ.

+ +
+ +
+ + +

Title

+

The title describing this FAQ, often a question.

+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +An object that can contain a FAQ document. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +OpenPGP support + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +User Fingerprint + + + + + +OpenPGP key ID + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +A reference in a Git repository. + + + + + + + + + + + + + + + + + + + + + + + + + +

Get the access grants specific to this reference.

+

Other grants may apply via wildcard rules.

+ +
+ + + + + + +
+ + +

Check a person's permissions on this reference.

+ +++ + + + + + +
param person:An IPerson to check.
return:A list of zero or more of "create", "push", and +"force-push", indicating the requested person's effective +permissions on this reference.
+ +
+ + + + + +Person to check + + + + + + +
+ + +Return matching BranchMergeProposals. + + + + + + +A list of merge proposal statuses to filter by. + + + + + + + + + + + + + + + + +

Set the access grants specific to this reference.

+

Other grants may apply via wildcard rules.

+ +
+ + + + + +

Grants

+

The new list of grants for this reference.

+

For example:

+
+[
+    {
+        "grantee_type": "Repository owner",
+        "can_create": true,
+        "can_push": true,
+        "can_force_push": true
+    },
+    {
+        "grantee_type": "Person",
+        "grantee_link": "/~example-person",
+        "can_push": true
+    }
+]
+
+ +
+ +
+
+
+ +
+ + +

Create a new BranchMergeProposal with this reference as the source.

+

Both the merge_target and the merge_prerequisite, if it is there, +must be references whose repositories have the same target as the +source.

+

References in personal repositories cannot specify merge proposals.

+ +
+ + + + + + + + + + + + + +

Needs review

+

If True, the proposal needs review. Otherwise, it will be work in progress.

+ +
+ +
+ + +

Initial comment

+

Registrant's initial description of proposal.

+ +
+ +
+ + +

Commit message

+

Message to use when committing this merge.

+ +
+ +
+ + + + + + + + +
+
+ + + + + + +
+
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +

Commit SHA-1

+

The full SHA-1 object name of the commit object referenced by this reference.

+ +
+ +
+ + +

Dependent landings

+

A collection of the merge proposals that are dependent on this reference.

+ +
+ +
+ + +

Landing candidates

+

A collection of the merge proposals where this reference is the target.

+ +
+ +
+ + +

Landing targets

+

A collection of the merge proposals where this reference is the source.

+ +
+ +
+ + +

Path

+

The full path of this reference, e.g. refs/heads/master.

+ +
+ +
+ + +All recipes associated with the object. + + + + + +

Repository

+

The Git repository containing this reference.

+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +A Git repository. + + + + + + + + + + + + + + + + + + + + + + + + + +

Return personal access tokens for this target.

+ +++ + + + + + + + +
param visible_by_user:
 If given, return only access tokens visible +by this user.
param include_expired:
 If True, include expired access tokens. +This must only be used for non-authentication purposes, such as +deleting database rows.
+ +
+ + + + + + + + + +
+ + +Get the access rules for this repository. + + + + + + + + + + +

Check a person's permissions on some references in this repository.

+ +++ + + + + + + + +
param person:An IPerson to check.
param paths:An iterable of reference paths.
return:A dict mapping reference paths to lists of zero or more of +"create", "push", and "force-push", indicating the requested +person's effective permissions on each of the requested +references.
+ +
+ + + + + +Person to check + + + + + +Reference paths + + + + + + +
+ + +

Can this repository be deleted in its current state?

+

A repository is considered deletable if it is not linked to any +merge proposals.

+ +
+ + + + + + +
+ + +

Return true if the reviewer is a trusted reviewer.

+

The reviewer is trusted if they either own the repository, or are in +the team that owns the repository, or they are in the review team +for the repository.

+ +
+ + + + + +A person for which the reviewer status is in question. + + + + + + +
+ + +

Look up a single reference in this repository by path.

+ +++ + + + + + +
param path:A string to look up as a path.
return:An IGitRef, or None.
+ +
+ + + + + +A string to look up as a path. + + + + + + + + + +
+ + +Return the GitSubscription for this person. + + + + + + +The person to search for + + + + + + + + + + + + +Return matching BranchMergeProposals. + + + + + + +A list of merge proposal statuses to filter by. + + + + + + + + + + + + + + + + +

Retrieves the list of reports that exist for a commit.

+
+ +++ + + + + +
param commit_sha1:
 The commit sha1 for the report.
+
+

Scopes: repository:build_status

+ +
+ + + + + +The Git commit for which this report is built. + + + + + + + + + +
+ + +Create a new webhook. + + + + + + +Delivery URL + + + + + +

Active

+

Deliver details of subscribed events.

+ +
+ +
+ + +Event types + + + + + +

Secret

+

An optional string used to sign delivery bodies with HMAC-SHA1 in the X-Hub-Signature header. This must be less than 200 bytes long.

+ +
+ +
+
+
+ + + + + + +
+ + +

Issue an access token for this repository.

+

Access tokens can be used to push to this repository over HTTPS. +They are only valid for a single repository, and have a short expiry +period (currently fixed at one week), so at the moment they are only +suitable in some limited situations. By default they are currently +implemented as macaroons.

+

If description and scopes are both given, then issue a personal +access token instead, either non-expiring or with an expiry time +given by date_expires. These may be used in webservice API +requests for certain methods on this repository.

+

This interface is experimental, and may be changed or removed +without notice.

+ +++ + + + +
return:If description and scopes are both given, the secret +for a new personal access token (Launchpad only records the hash +of this secret and not the secret itself, so the caller must be +careful to save this; personal access tokens are in development +and may not entirely work yet). Otherwise, a serialised +macaroon.
+ +
+ + + + + +A short description of the token. + + + + + +A list of scopes to be granted by this token. + + + + + +When the token should expire. + + + + + + +
+ + +

Trigger a repack repository operation.

+

Raises Unauthorized if the repack was attempted by a person +that is not an admin or a registry expert.

+ +
+ + + + + + +
+ + +

Trigger a gc run for a given git repository.

+

Raises Unauthorized if the repack was attempted by a person +that is not an admin or a registry expert.

+ +
+ + + + + + +
+ + +Set the access rules for this repository. + + + + + + +

Rules

+

The new list of rules for this repository.

+

For example:

+
+[
+    {
+        "ref_pattern": "refs/heads/*",
+        "grants": [
+            {
+                "grantee_type": "Repository owner",
+                "can_create": true,
+                "can_push": true,
+                "can_force_push": true
+            }
+        ]
+    },
+    {
+        "ref_pattern": "refs/heads/stable/*",
+        "grants": [
+            {
+                "grantee_type": "Person",
+                "grantee_link": "/~example-stable-team",
+                "can_create": true,
+                "can_push": true
+            }
+        ]
+    }
+]
+
+ +
+ +
+
+
+ +
+ + +

Create a new status report.

+
+ +++ + + + + + + + + + + + + + +
param title:The name of the new report.
param commit_sha1:
 The commit sha1 for the report.
param url:The external link of the status report.
param result_summary:
 The description of the new report.
param result:The result of the new report.
+
+

Scopes: repository:build_status

+ +
+ + + + + +A short title for the report. + + + + + +The Git commit for which this report is built. + + + + + +

URL

+

The external url of the report.

+ +
+ +
+ + +A short summary of the result. + + + + + +Result of the report + + + + + + + + + +
+
+ + + + + + +
+ + +

Force a rescan of this repository as a celery task.

+

This may be helpful in cases where a previous scan crashed.

+ +
+ + + + + + +
+ + +

Subscribe this person to the repository.

+ +++ + + + + + + + + + + + + + + + + + +
param person:The Person to subscribe.
param notification_level:
 The kinds of repository changes that +cause notification.
param max_diff_lines:
 The maximum number of lines of diff that may +appear in a notification.
param code_review_level:
 The kinds of code review activity that +cause notification.
param subscribed_by:
 The person who is subscribing the subscriber. +Most often the subscriber themselves.
return:A new or existing GitSubscription.
+ +
+ + + + + +The person to subscribe. + + + + + +The level of notification to subscribe to. + + + + + + + + + +The max number of lines for diff email. + + + + + + + + + + +The level of code review notification emails. + + + + + + + + + + + + +
+ + +

Remove the person's subscription to this repository.

+ +++ + + + + + + +
param person:The person or team to unsubscribe from the repository.
param unsubscribed_by:
 The person doing the unsubscribing.
+ +
+ + + + + +The person to unsubscribe + + + + + + +
+ + +

Fork this repository to the given user's account.

+ +++ + + + + + + + + + +
param requester:
 The IPerson performing this fork.
param new_owner:
 The IPerson that will own the forked repository.
return:The newly created GitRepository.
+ +
+ + + + + +The person who will own the forked repository. + + + + + + + + + +
+
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +The branch references present in this repository. + + + + + +

Builder constraints

+

Builder resource tags required by builds of this repository.

+ +
+ +
+ + +The associated CodeImport, if any. + + + + + +Date created + + + + + +Date last modified + + + + + +

Date last repacked

+

The date that this repository was last repacked.

+ +
+ +
+ + +

Date last scanned

+

The date when pack statistics were last updated for this repository.

+ +
+ +
+ + +

Default branch

+

The full path to the default branch for this repository, e.g. refs/heads/master.

+ +
+ +
+ + +

Dependent landings

+

A collection of the merge proposals that are dependent on this repository.

+ +
+ +
+ + +

Description

+

A short description of this repository.

+ +
+ +
+ + +

Display name

+

Display name of the repository.

+ +
+ +
+ + +

HTTPS URL

+

An HTTPS URL for this repository, or None in the case of private repositories.

+ +
+ +
+ + +

Git identity

+

If this is the default repository for some target, then this is 'lp:' plus a shortcut version of the path via that target. Otherwise it is simply 'lp:' plus the unique name.

+ +
+ +
+ + +

SSH URL

+

A git+ssh:// URL for this repository.

+ +
+ +
+ + +ID + + + + + +

Information type

+

The type of information contained in this repository.

+ +
+ + + + + + + +
+ + +

Landing candidates

+

A collection of the merge proposals where this repository is the target.

+ +
+ +
+ + +

Landing targets

+

A collection of the merge proposals where this repository is the source.

+ +
+ +
+ + +

Loose object count

+

The number of loose objects for this repository.

+ +
+ +
+ + +

Name

+

The repository name. Keep very short, unique, and descriptive, because it will be used in URLs.

+ +
+ +
+ + +

Owner

+

The owner of this Git repository. This controls who can modify the repository.

+ +
+ +
+ + +

Owner default

+

Whether this repository is the default for its owner and target.

+ +
+ +
+ + +

Pack count

+

The number of packs for this repository.

+ +
+ +
+ + +

Private

+

This repository is visible only to its subscribers.

+ +
+ +
+ + +All recipes associated with the object. + + + + + +The references present in this repository. + + + + + +

Registrant

+

The person who registered this Git repository.

+ +
+ +
+ + +

Repository type

+

The way this repository is hosted: directly on Launchpad, or imported from somewhere else.

+ +
+ + + + +
+ + +

Review Team

+

The reviewer of a repository is the person or exclusive team that is responsible for reviewing proposals and merging into this repository.

+ +
+ +
+ + +Persons subscribed to this repository. + + + + + +GitSubscriptions associated with this repository. + + + + + +

Target

+

The target of the repository.

+ +
+ +
+ + +

Target default

+

Whether this repository is the default for its target.

+ +
+ +
+ + +

Unique name

+

Unique name of the repository, including the owner and project names.

+ +
+ +
+ + +Webhooks for this target. + + + +
+ + + + +

Builder constraints

+

Builder resource tags required by builds of this repository.

+ +
+ +
+ + +The associated CodeImport, if any. + + + + + +

Default branch

+

The full path to the default branch for this repository, e.g. refs/heads/master.

+ +
+ +
+ + +

Description

+

A short description of this repository.

+ +
+ +
+ + +

Information type

+

The type of information contained in this repository.

+ +
+ + + + + + + +
+ + +

Name

+

The repository name. Keep very short, unique, and descriptive, because it will be used in URLs.

+ +
+ +
+ + +

Owner

+

The owner of this Git repository. This controls who can modify the repository.

+ +
+ +
+ + +

Review Team

+

The reviewer of a repository is the person or exclusive team that is responsible for reviewing proposals and merging into this repository.

+ +
+ +
+ + +

Target

+

The target of the repository.

+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +The relationship between a person and a Git repository. + + + + + + + + + + + + + + + + + + + + + + + + + +Can the user unsubscribe the subscriber from the repository? + + + + + + + + + + + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +

Generated Diff Size Limit

+

Diffs greater than the specified number of lines will not be sent to the subscriber. The subscriber will still receive an email with the new revision details even if the diff is larger than the specified number of lines.

+ +
+ + + + + + +
+ + +

Notification Level

+

Attribute notifications are sent when repository details are changed such as lifecycle status and name. Revision notifications are generated when new revisions are found.

+ +
+ + + + + +
+ + +

Person

+

Enter the launchpad id, or email address of the person you wish to subscribe to this repository. If you are unsure, use the "Choose..." option to find the person in Launchpad. You can only subscribe someone who is a registered user of the system.

+ +
+ +
+ + +Repository ID + + + + + +

Code review Level

+

Control the kind of review activity that triggers notifications.

+ +
+ + + + +
+ + +

Subscribed by

+

The person who created this subscription.

+ +
+ +
+
+ + + + +

Generated Diff Size Limit

+

Diffs greater than the specified number of lines will not be sent to the subscriber. The subscriber will still receive an email with the new revision details even if the diff is larger than the specified number of lines.

+ +
+ + + + + + +
+ + +

Notification Level

+

Attribute notifications are sent when repository details are changed such as lifecycle status and name. Revision notifications are generated when new revisions are found.

+ +
+ + + + + +
+ + +

Code review Level

+

Control the kind of review activity that triggers notifications.

+ +
+ + + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +An entity which has a collection of bug tasks. + + + + + + + + + + + + + + + + + + + + + + + + + +

Search the IBugTasks reported on this entity.

+ +++ + + + +
search_params:a BugTaskSearchParams object
+

Return an iterable of matching results.

+

Note: milestone is currently ignored for all IBugTargets +except IProduct.

+ +
+ + + + + +List of fields by which the results are ordered. + + + + + +Bug ID or search text. + + + + + +

Status

+

Show only bugs with the given status value or list of values.

+ +
+ +
+ + +

Importance

+

Show only bugs with the given importance or list of importances.

+ +
+ +
+ + +

Information Type

+

Show only bugs with the given information type or list of information types.

+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Show only bugs with patches available. + + + + + +Show only bugs associated with a CVE + + + + + +

Tags

+

String or list of strings for tags to search. To exclude, prepend a '-', e.g. '-unwantedtag'

+ +
+ +
+ + +

Tags combination

+

Search for any or all of the tags specified.

+ +
+ + + +
+ + +Omit bugs marked as duplicate, + + + + + +

Status upstream

+

Indicates the status of any remote watches associated with the bug. Possible values include: pending_bugwatch, hide_upstream, resolved_upstream, and open_upstream.

+ +
+ +
+ + +

Milestone

+

Show only bug tasks targeted to this milestone.

+ +
+ +
+ + +

Component

+

Distribution package archive grouping. E.g. main, universe, multiverse

+ +
+ +
+ + + + + + +Exclude bugs with packages specified + + + + + +Search for bugs that are linked to branches or for bugs that are not linked to branches. + + + + + + + + +Search for bugs that have been modified since the given date. + + + + + +Search for bugs that have been created since the given date. + + + + + +Search for bugs that were created before the given date. + + + + + +Omit bugs targeted to a series + + + + + +Search for bugs that are linked to blueprints or for bugs that are not linked to blueprints. + + + + + + + +
+ + + + +
+
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

An object that has related Git repositories.

+

A project contains Git repositories, a source package on a distribution +contains Git repositories, and a person contains "personal" Git +repositories.

+ +
+ + + + + + + + + + + + + + + + + + + + + + +
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +An interface for classes providing milestones. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +The visible and active milestones associated with this object, ordered by date expected. + + + + + +All milestones associated with this object, ordered by date expected. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

An entity that has a translation import queue.

+

Examples include ProductSeries, SourcePackage, DistroSeries, +and Person.

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + +

Return entries in the translation import queue for this entity.

+ +++ + + + + + + + +
arg import_status:
 RosettaImportStatus DB Schema entry.
arg file_extension:
 String with the file type extension, usually 'po' +or 'pot'.
+

If one of both of 'import_status' or 'file_extension' are given, the +returned entries are filtered based on those values.

+ +
+ + + + + +

Status

+

Show only entries with this status

+ +
+ + + + + + + + +
+ + +

Filename extension

+

Show only entries with this filename suffix

+ +
+ +
+ +
+ + + + +
+
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +A person's nickname on an IRC network. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +IRC network + + + + + +Nickname + + + + + +Owner + + + + + + + + +IRC network + + + + + +Nickname + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Jabber specific user ID + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +New Jabber user ID + + + + + +Owner + + + + + + + + +New Jabber user ID + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +A Language. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +The ISO 639 code + + + + + +The English name + + + + + +

Plural form expression

+

The expression that relates a number of items to the appropriate plural form.

+ +
+ +
+ + +

Number of plural forms

+

The number of plural forms this language has.

+ +
+ +
+ + +

Text direction

+

The direction of text in this language.

+ +
+ + + +
+ + +Total number of translators for this language. + + + + + +

Visible

+

Whether this language is visible by default.

+ +
+ +
+
+ + + + +The ISO 639 code + + + + + +The English name + + + + + +

Plural form expression

+

The expression that relates a number of items to the appropriate plural form.

+ +
+ +
+ + +

Number of plural forms

+

The number of plural forms this language has.

+ +
+ +
+ + +

Text direction

+

The direction of text in this language.

+ +
+ + + +
+ + +

Visible

+

Whether this language is visible by default.

+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Build information for live filesystem builds. + + + + + + + + + + + + + + + + + + + + + + + + + +

URLs for all the files produced by this build.

+ +++ + + + +
return:A collection of URLs for this build.
+ +
+ + + + + + +
+ + +Change the build's score. + + + + + + +Score + + + + + + + + + +

Restore the build record to its initial state.

+

Build record loses its history, is moved to NEEDSBUILD and a new +non-scored BuildQueue entry is created for it.

+ +
+ + + + + + +
+ + +

Cancel the build if it is either pending or in progress.

+

Check the can_be_cancelled property prior to calling this method to +find out if cancelling the build is possible.

+

If the build is in progress, it is marked as CANCELLING until the +buildd manager terminates the build and marks it CANCELLED. If the +build is not in progress, it is marked CANCELLED immediately and is +removed from the build queue.

+

If the build is not in a cancellable state, this method is a no-op.

+ +
+ + + + + + +
+
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +The archive from which to build the live filesystem. + + + + + +

Build Log URL

+

A URL for the build log. None if there is no log available.

+ +
+ +
+ + +

Builder

+

The builder assigned to this job.

+ +
+ +
+ + +

Status

+

The current status of the job.

+ +
+ + + + + + + + + + + + + +
+ + +

Can be cancelled

+

Whether this build record can be cancelled.

+ +
+ +
+ + +

Can be rescored

+

Whether this build record can be rescored manually.

+ +
+ +
+ + +

Can be retried

+

Whether this build record can be retried.

+ +
+ +
+ + +

Date finished

+

The actual build start time. Set when the build is dispatched the first time and not changed in subsequent build attempts.

+ +
+ +
+ + +

Date started

+

The timestamp when the build farm job was started.

+ +
+ +
+ + +

Date finished

+

The timestamp when the build farm job was finished.

+ +
+ +
+ + +

Date created

+

The timestamp when the build farm job was created.

+ +
+ +
+ + +

Dependencies

+

Debian-like dependency line that must be satisfied before attempting to build this request.

+ +
+ +
+ + +

Distribution

+

Shortcut for its distribution.

+ +
+ +
+ + +The series and architecture for which to build. + + + + + +

Distribution series

+

Shortcut for its distribution series.

+ +
+ +
+ + +

Duration

+

Duration interval, calculated when the result gets collected.

+ +
+ +
+ + +The live filesystem to build. + + + + + +A dict of data about the image; this will be merged into the metadata dict for the live filesystem. + + + + + +The pocket for which to build. + + + + + + + + + + +The person who requested this build. + + + + + +Score of the related build farm job (if any). + + + + + +Title + + + + + +An optional unique key; if set, this identifies a class of builds for this live filesystem. + + + + + +

Upload Log URL

+

A URL for failed upload logs.Will be None if there was no failure.

+ +
+ +
+ + +A version string for this build. + + + +
+ + + + +

Build Log URL

+

A URL for the build log. None if there is no log available.

+ +
+ +
+ + +

Status

+

The current status of the job.

+ +
+ + + + + + + + + + + + + +
+ + +

Dependencies

+

Debian-like dependency line that must be satisfied before attempting to build this request.

+ +
+ +
+ + +

Distribution

+

Shortcut for its distribution.

+ +
+ +
+ + +

Distribution series

+

Shortcut for its distribution series.

+ +
+ +
+ + +Title + + + + + +

Upload Log URL

+

A URL for failed upload logs.Will be None if there was no failure.

+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +A buildable live filesystem image. + + + + + + + + + + + + + + + + + + + + + + + + + +Create a new webhook. + + + + + + +Delivery URL + + + + + +

Active

+

Deliver details of subscribed events.

+ +
+ +
+ + +Event types + + + + + +

Secret

+

An optional string used to sign delivery bodies with HMAC-SHA1 in the X-Hub-Signature header. This must be less than 200 bytes long.

+ +
+ +
+
+
+ + + + + + +
+ + +

Request that the live filesystem be built.

+ +++ + + + + + + + + + + + + + + + + + + + + + +
param requester:
 The person requesting the build.
param archive:The IArchive to associate the build with.
param distro_arch_series:
 The architecture to build for.
param pocket:The pocket that should be targeted.
param unique_key:
 An optional unique key for this build; if set, +this identifies a class of builds for this live filesystem.
param metadata_override:
 An optional JSON string with a dict of +data about the image; this will be merged into the metadata dict +for the live filesystem.
param version:A version string for this build; if not set, a +version string will be generated from the date and time when the +build was requested.
return:ILiveFSBuild.
+ +
+ + + + + + + + + + + + + + + + + + + + + + +A unique key for this build, if required. + + + + + +A dict of data about the image. + + + + + +A version string for this build. + + + + + + + + + + + +
+
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +

All builds of this live filesystem.

+

All builds of this live filesystem, sorted in descending order of finishing (or starting if not completed successfully).

+ +
+ +
+ + +

Completed builds of this live filesystem.

+

Completed builds of this live filesystem, sorted in descending order of finishing.

+ +
+ +
+ + +Date created + + + + + +Date last modified + + + + + +

Distro Series

+

The series for which the image should be built.

+ +
+ +
+ + +ID + + + + + +

Binary file retention period

+

Keep binary files attached to builds of this live filesystem for at least this many days. If unset, disable pruning.

+ +
+ +
+ + +A dict of data about the image. Entries here will be passed to the builder. + + + + + +

Name

+

The name of the live filesystem image.

+ +
+ +
+ + +

Owner

+

The owner of this live filesystem image.

+ +
+ +
+ + +

Pending builds of this live filesystem.

+

Pending builds of this live filesystem, sorted in descending order of creation.

+ +
+ +
+ + +

Registrant

+

The person who registered this live filesystem image.

+ +
+ +
+ + +

Relative build score

+

A delta to apply to all build scores for the live filesystem. Builds with a higher score will build sooner.

+ +
+ +
+ + +

Require virtualized builders

+

Only build this live filesystem image on virtual builders.

+ +
+ +
+ + +Webhooks for this target. + + + +
+ + + + +

Distro Series

+

The series for which the image should be built.

+ +
+ +
+ + +

Binary file retention period

+

Keep binary files attached to builds of this live filesystem for at least this many days. If unset, disable pruning.

+ +
+ +
+ + +A dict of data about the image. Entries here will be passed to the builder. + + + + + +

Name

+

The name of the live filesystem image.

+ +
+ +
+ + +

Owner

+

The owner of this live filesystem image.

+ +
+ +
+ + +

Relative build score

+

A delta to apply to all build scores for the live filesystem. Builds with a higher score will build sooner.

+ +
+ +
+ + +

Require virtualized builders

+

Only build this live filesystem image on virtual builders.

+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +A Message. + + + + + + + + + + + + + + + + + + + + + + + + + +Return None because messages are not threaded over the API. + + + + + + + + + + +Edit the content of this message, generating a new message +revision with the old content. + + + + + + +

Message content

+

The new message content string

+ +
+ +
+
+
+ +
+ + +Deletes this message content. + + + + + + + + +
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +A list of BugAttachments connected to this message. + + + + + +All the text/plain chunks joined together as a unicode string. + + + + + +Date Created + + + + + +When this message was deleted + + + + + +When this message was last edited + + + + + +Person + + + + + +Parent + + + + + +

Message revision history

+

Revision history of this message, sorted in ascending order.

+ +
+ +
+ + +Subject + + + + + +

Message visibility.

+

Whether or not the message is visible.

+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +A historical revision of a IMessage. + + + + + + + + + + + + + + + + + + + + + + + + + +Deletes this MessageRevision content. + + + + + + + + + + + + + + The canonical link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +The message at the given revision + + + + + +The time when this message revision was created. + + + + + +The time when this message revision was created, rendered in the user's timezone for the web UI. + + + + + +The time when this message revision was created. + + + + + +Revision number + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Actual interface for milestones. + + + + + + + + + + + + + + + + + + + + + + + + + +

Return all the subscriptions with the specified levels.

+ +++ + + + +
return:A sequence of IStructuralSubscription.
+ +
+ + + + + + + + + +
+ + +Return the subscription for person, if it exists. + + + + + + + + + + + + + + + + + +Is user subscribed, directly or via a team, to bug mail? + + + + + + + + + + +

Search the IBugTasks reported on this entity.

+ +++ + + + +
search_params:a BugTaskSearchParams object
+

Return an iterable of matching results.

+

Note: milestone is currently ignored for all IBugTargets +except IProduct.

+ +
+ + + + + +List of fields by which the results are ordered. + + + + + +Bug ID or search text. + + + + + +

Status

+

Show only bugs with the given status value or list of values.

+ +
+ +
+ + +

Importance

+

Show only bugs with the given importance or list of importances.

+ +
+ +
+ + +

Information Type

+

Show only bugs with the given information type or list of information types.

+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Show only bugs with patches available. + + + + + +Show only bugs associated with a CVE + + + + + +

Tags

+

String or list of strings for tags to search. To exclude, prepend a '-', e.g. '-unwantedtag'

+ +
+ +
+ + +

Tags combination

+

Search for any or all of the tags specified.

+ +
+ + + +
+ + +Omit bugs marked as duplicate, + + + + + +

Status upstream

+

Indicates the status of any remote watches associated with the bug. Possible values include: pending_bugwatch, hide_upstream, resolved_upstream, and open_upstream.

+ +
+ +
+ + +

Milestone

+

Show only bug tasks targeted to this milestone.

+ +
+ +
+ + +

Component

+

Distribution package archive grouping. E.g. main, universe, multiverse

+ +
+ +
+ + + + + + +Exclude bugs with packages specified + + + + + +Search for bugs that are linked to branches or for bugs that are not linked to branches. + + + + + + + + +Search for bugs that have been modified since the given date. + + + + + +Search for bugs that have been created since the given date. + + + + + +Search for bugs that were created before the given date. + + + + + +Omit bugs targeted to a series + + + + + +Search for bugs that are linked to blueprints or for bugs that are not linked to blueprints. + + + + + + + +
+ + + + +
+ + +

Return the milestone tags in alphabetical order.

+

See above the IMilestone.setTags docstring for an explanation of +why this is not a property.

+ +
+ + + + + + +
+ + +

Add a bug subscription for this structure.

+

This method is used to create a new IStructuralSubscription for the +target. This initially has a single filter which will allow all +notifications will be sent.

+ +++ + + + + + + + +
subscriber:The IPerson who will be subscribed. If omitted, +subscribed_by will be used.
subscribed_by:The IPerson creating the subscription.
return:The new bug subscription.
+ +
+ + + + + +Person to subscribe. If omitted, the requesting user will be subscribed. + + + + + + + + + + + +
+ + +

Add a bug subscription filter for this structure.

+

This method is used to create a new IBugSubscriptionFilter for the +target. It will initially allow all notifications to be sent.

+ +++ + + + + + + + +
subscriber:The IPerson who will be subscribed. If omitted, +subscribed_by will be used.
subscribed_by:The IPerson creating the subscription.
return:The new bug subscription filter.
+ +
+ + + + + +Person to subscribe. If omitted, the requesting user will be subscribed. + + + + + + + + + + + +
+ + +

Remove a subscription to bugs from this structure.

+

This will delete all associated filters.

+ +++ + + + + + + +
subscriber:The IPerson who will be unsubscribed. If omitted, +unsubscribed_by will be used.
unsubscribed_by:
 The IPerson removing the subscription.
+ +
+ + + + + +Person to unsubscribe. If omitted, the requesting user will be unsubscribed. + + + + + + +
+ + +

Create a new ProductRelease.

+ +++ + + + + + + + + + + + + + + +
param owner:IPerson object who manages the release.
param datereleased:
 Date of the product release.
param changelog:
 Detailed changes in each version.
param release_notes:
 Overview of changes in each version.
returns:IProductRelease object.
+ +
+ + + + + +

Date released

+

The date this release was published. Before release, this should have an estimated release date.

+ +
+ +
+ + +

Changelog

+

A description of every change in the release.

+ +
+ +
+ + +

Release notes

+

A description of important new features (though the changelog below might repeat some of this information).

+ +
+ +
+
+
+ + + + + + +
+ + +

Set the milestone tags.

+ +++ + + + + + +
param:tags The list of tags to be associated with milestone.
param:user The user who is updating tags for this milestone.
+

Note that this is not a property because, while the current user +is needed to store tags metadata, it is desirable to avoid +using thread locals to get the current request in models.

+ +
+ + + + + +

Tags for this milestone

+

Space-separated keywords for classifying this milestone.

+ +
+ +
+
+
+ +
+
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +

Code name

+

An alternative name for the milestone.

+ +
+ +
+ + +

Date Targeted

+

Example: 2005-11-24

+ +
+ +
+ + +

Active

+

Whether or not this object should be shown in web forms for targeting.

+ +
+ +
+ + +

Name

+

Only letters, numbers, and simple punctuation are allowed.

+ +
+ +
+ + +

Official Bug Tags

+

The list of bug tags defined as official.

+ +
+ +
+ + +The release for this milestone. + + + + + +The productseries or distroseries of this milestone. + + + + + +

Summary

+

A summary of the features and status of this milestone.

+ +
+ +
+ + +The product, distribution, or project group for this milestone. + + + + + +A context title for pages. + + + +
+ + + + +

Code name

+

An alternative name for the milestone.

+ +
+ +
+ + +

Date Targeted

+

Example: 2005-11-24

+ +
+ +
+ + +

Active

+

Whether or not this object should be shown in web forms for targeting.

+ +
+ +
+ + +

Name

+

Only letters, numbers, and simple punctuation are allowed.

+ +
+ +
+ + +The productseries or distroseries of this milestone. + + + + + +

Summary

+

A summary of the features and status of this milestone.

+ +
+ +
+ + +The product, distribution, or project group for this milestone. + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +A project containing Open Container Initiative recipes. + + + + + + + + + + + + + + + + + + + + + + + + + +

Search the IBugTasks reported on this entity.

+ +++ + + + +
search_params:a BugTaskSearchParams object
+

Return an iterable of matching results.

+

Note: milestone is currently ignored for all IBugTargets +except IProduct.

+ +
+ + + + + +List of fields by which the results are ordered. + + + + + +Bug ID or search text. + + + + + +

Status

+

Show only bugs with the given status value or list of values.

+ +
+ +
+ + +

Importance

+

Show only bugs with the given importance or list of importances.

+ +
+ +
+ + +

Information Type

+

Show only bugs with the given information type or list of information types.

+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Show only bugs with patches available. + + + + + +Show only bugs associated with a CVE + + + + + +

Tags

+

String or list of strings for tags to search. To exclude, prepend a '-', e.g. '-unwantedtag'

+ +
+ +
+ + +

Tags combination

+

Search for any or all of the tags specified.

+ +
+ + + +
+ + +Omit bugs marked as duplicate, + + + + + +

Status upstream

+

Indicates the status of any remote watches associated with the bug. Possible values include: pending_bugwatch, hide_upstream, resolved_upstream, and open_upstream.

+ +
+ +
+ + +

Milestone

+

Show only bug tasks targeted to this milestone.

+ +
+ +
+ + +

Component

+

Distribution package archive grouping. E.g. main, universe, multiverse

+ +
+ +
+ + + + + + +Exclude bugs with packages specified + + + + + +Search for bugs that are linked to branches or for bugs that are not linked to branches. + + + + + + + + +Search for bugs that have been modified since the given date. + + + + + +Search for bugs that have been created since the given date. + + + + + +Search for bugs that were created before the given date. + + + + + +Omit bugs targeted to a series + + + + + +Search for bugs that are linked to blueprints or for bugs that are not linked to blueprints. + + + + + + + +
+ + + + +
+ + +

Return all the subscriptions with the specified levels.

+ +++ + + + +
return:A sequence of IStructuralSubscription.
+ +
+ + + + + + + + + +
+ + +Return the subscription for person, if it exists. + + + + + + + + + + + + + + + + + +Is user subscribed, directly or via a team, to bug mail? + + + + + + + + + + +

Add a bug subscription for this structure.

+

This method is used to create a new IStructuralSubscription for the +target. This initially has a single filter which will allow all +notifications will be sent.

+ +++ + + + + + + + +
subscriber:The IPerson who will be subscribed. If omitted, +subscribed_by will be used.
subscribed_by:The IPerson creating the subscription.
return:The new bug subscription.
+ +
+ + + + + +Person to subscribe. If omitted, the requesting user will be subscribed. + + + + + + + + + + + +
+ + +

Add a bug subscription filter for this structure.

+

This method is used to create a new IBugSubscriptionFilter for the +target. It will initially allow all notifications to be sent.

+ +++ + + + + + + + +
subscriber:The IPerson who will be subscribed. If omitted, +subscribed_by will be used.
subscribed_by:The IPerson creating the subscription.
return:The new bug subscription filter.
+ +
+ + + + + +Person to subscribe. If omitted, the requesting user will be subscribed. + + + + + + + + + + + +
+ + +

Remove a subscription to bugs from this structure.

+

This will delete all associated filters.

+ +++ + + + + + + +
subscriber:The IPerson who will be unsubscribed. If omitted, +unsubscribed_by will be used.
unsubscribed_by:
 The IPerson removing the subscription.
+ +
+ + + + + +Person to unsubscribe. If omitted, the requesting user will be unsubscribed. + + + + + + +
+ + +Create an IOCIRecipe for this project. + + + + + + +

OCI Recipe name.

+

The name of the new OCI Recipe.

+ +
+ +
+ + +Person or team that owns the new OCI Recipe. + + + + + +Git branch. + + + + + +

Build file path.

+

The relative path to the file within this recipe's branch that defines how to build the recipe.

+ +
+ +
+ + +

Build ARGs to be used when building the recipe

+

A dict of VARIABLE=VALUE to be used as ARG when building the recipe.

+ +
+ +
+ + +

Description for this recipe.

+

A short description of this recipe.

+ +
+ +
+ + +Should this recipe be built daily?. + + + +
+
+ + + + + + +
+ + +Change whether an OCI Recipe is official or not for this project. + + + + + + +

OCI recipe

+

The OCI recipe to change the status of.

+ +
+ +
+ + +

Official status

+

Whether the OCI recipe should be official or not.

+ +
+ +
+
+
+ +
+
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +

After reporting a bug, I can expect the following.

+

This message of acknowledgement will be displayed to anyone after reporting a bug.

+ +
+ +
+ + +

Helpful guidelines for reporting a bug

+

These guidelines will be shown to everyone reporting a bug and should be text or a bulleted list with your particular requirements, if any.

+ +
+ +
+ + +Date created + + + + + +Date last modified + + + + + +The description for this OCI project. + + + + + +Display name for this OCI project. + + + + + +The distribution that this OCI project is associated with. + + + + + +

Name

+

The name of this OCI project.

+ +
+ +
+ + +

Official Bug Tags

+

The list of bug tags defined as official.

+ +
+ +
+ + +The project that this OCI project is associated with. + + + + + +

Registrant

+

The person that registered this project.

+ +
+ +
+ + +Series inside this OCI project. + + + + + +

Type of service for translations application

+

Where does this pillar do translations?

+ +
+ + + + + +
+
+ + + + +

After reporting a bug, I can expect the following.

+

This message of acknowledgement will be displayed to anyone after reporting a bug.

+ +
+ +
+ + +

Helpful guidelines for reporting a bug

+

These guidelines will be shown to everyone reporting a bug and should be text or a bulleted list with your particular requirements, if any.

+ +
+ +
+ + +The description for this OCI project. + + + + + +The distribution that this OCI project is associated with. + + + + + +

Name

+

The name of this OCI project.

+ +
+ +
+ + +The project that this OCI project is associated with. + + + + + +

Type of service for translations application

+

Where does this pillar do translations?

+ +
+ + + + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

A series of an Open Container Initiative project.

+

This is used to allow tracking bugs against multiple versions of images.

+ +
+ + + + + + + + + + + + + + + + + + + + + + +
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +

Date created

+

The date on which this series was created in Launchpad.

+ +
+ +
+ + +

Name

+

The name of this series.

+ +
+ +
+ + +The OCI project that this series belongs to. + + + + + +

Registrant

+

The person that registered this series.

+ +
+ +
+ + +Status + + + + + + + + + + + + +

Summary

+

A brief summary of this series.

+ +
+ +
+
+ + + + +

Name

+

The name of this series.

+ +
+ +
+ + +Status + + + + + + + + + + + + +

Summary

+

A brief summary of this series.

+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +A rule for pushing builds of an OCI recipe to a registry. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +

Image name

+

The intended name of the image on the registry.

+ +
+ +
+ + +

Registry URL

+

The registry URL for the credentials of this push rule

+ +
+ +
+ + +

Username

+

The username for the credentials, if available.

+ +
+ +
+
+ + + + +

Image name

+

The intended name of the image on the registry.

+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +A build record for an OCI recipe. + + + + + + + + + + + + + + + + + + + + + + + + + +

URLs for all the files produced by this build.

+ +++ + + + +
return:A collection of URLs for this build.
+ +
+ + + + + + +
+ + +Change the build's score. + + + + + + +Score + + + + + + + + + +

Restore the build record to its initial state.

+

Build record loses its history, is moved to NEEDSBUILD and a new +non-scored BuildQueue entry is created for it.

+ +
+ + + + + + +
+ + +

Cancel the build if it is either pending or in progress.

+

Check the can_be_cancelled property prior to calling this method to +find out if cancelling the build is possible.

+

If the build is in progress, it is marked as CANCELLING until the +buildd manager terminates the build and marks it CANCELLED. If the +build is not in progress, it is marked CANCELLED immediately and is +removed from the build queue.

+

If the build is not in a cancellable state, this method is a no-op.

+ +
+ + + + + + +
+ + +

Schedule an upload of this build to each configured registry.

+ +++ + + + + +
raises CannotScheduleRegistryUpload:
 if the build is not in a state +where an upload can be scheduled.
+ +
+ + + + + + +
+
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +Architecture tag + + + + + +

Archive

+

The Archive context for this build.

+ +
+ +
+ + +

Build Log URL

+

A URL for the build log. None if there is no log available.

+ +
+ +
+ + +

Builder

+

The builder assigned to this job.

+ +
+ +
+ + +

Status

+

The current status of the job.

+ +
+ + + + + + + + + + + + + +
+ + +

Can be cancelled

+

Whether this build record can be cancelled.

+ +
+ +
+ + +

Can be rescored

+

Whether this build record can be rescored manually.

+ +
+ +
+ + +

Can be retried

+

Whether this build record can be retried.

+ +
+ +
+ + +The date when the build completed or is estimated to complete. + + + + + +

Date finished

+

The actual build start time. Set when the build is dispatched the first time and not changed in subsequent build attempts.

+ +
+ +
+ + +

Date started

+

The timestamp when the build farm job was started.

+ +
+ +
+ + +

Date finished

+

The timestamp when the build farm job was finished.

+ +
+ +
+ + +

Date created

+

The timestamp when the build farm job was created.

+ +
+ +
+ + +

Dependencies

+

Debian-like dependency line that must be satisfied before attempting to build this request.

+ +
+ +
+ + +

Distribution

+

Shortcut for its distribution.

+ +
+ +
+ + +The series and architecture for which to build. + + + + + +

Distribution series

+

Shortcut for its distribution series.

+ +
+ +
+ + +

Duration

+

Duration interval, calculated when the result gets collected.

+ +
+ +
+ + +If true, the date value is an estimate. + + + + + +The datetime when the build job is estimated to complete. + + + + + +

Pocket

+

The build targeted pocket.

+ +
+ + + + + + +
+ + +The OCI recipe to build. + + + + + +

Registry upload error summary

+

The error summary, if any, from the last attempt to upload this build to a registry.

+ +
+ +
+ + +

Detailed registry upload errors

+

A list of errors, as described in https://docs.docker.com/registry/spec/api/#errors, from the last attempt to upload this build to a registry.

+ +
+ +
+ + +Registry upload status + + + + + + + + + + +

Requester

+

The person who requested this OCI recipe build.

+ +
+ +
+ + +Score of the related build farm job (if any). + + + + + +Title + + + + + +

Upload Log URL

+

A URL for failed upload logs.Will be None if there was no failure.

+ +
+ +
+
+ + + + +

Build Log URL

+

A URL for the build log. None if there is no log available.

+ +
+ +
+ + +

Status

+

The current status of the job.

+ +
+ + + + + + + + + + + + + +
+ + +

Dependencies

+

Debian-like dependency line that must be satisfied before attempting to build this request.

+ +
+ +
+ + +

Distribution

+

Shortcut for its distribution.

+ +
+ +
+ + +

Distribution series

+

Shortcut for its distribution series.

+ +
+ +
+ + +

Pocket

+

The build targeted pocket.

+ +
+ + + + + + +
+ + +Registry upload status + + + + + + + + + + +Title + + + + + +

Upload Log URL

+

A URL for failed upload logs.Will be None if there was no failure.

+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +A request to build an OCI Recipe. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +Builds produced by this request + + + + + +The time when this request finished + + + + + +The time when this request was made + + + + + +Error message + + + + + +OCI Recipe + + + + + +Status + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +A recipe for building Open Container Initiative images. + + + + + + + + + + + + + + + + + + + + + + + + + +Create a new webhook. + + + + + + +Delivery URL + + + + + +

Active

+

Deliver details of subscribed events.

+ +
+ +
+ + +Event types + + + + + +

Secret

+

An optional string used to sign delivery bodies with HMAC-SHA1 in the X-Hub-Signature header. This must be less than 200 bytes long.

+ +
+ +
+
+
+ + + + + + +
+ + +Add a new rule for pushing builds of this recipe to a registry. + + + + + + +

Registry URL

+

URL for the target registry

+ +
+ +
+ + +

Image name

+

Name of the image to push to on the registry

+ +
+ +
+ + +

Registry credentials

+

The credentials to use in pushing the image to the registry

+ +
+ +
+ + +Registry credentials owner + + + +
+
+ + + + + + +
+ + +Set the architectures for which the recipe should be built. + + + + + + + + + + + + + + +

Request that the OCI recipe is built for all available +architectures.

+ +++ + + + + + + +
param requester:
 The person requesting the build.
return:A IOCIRecipeBuildRequest instance.
+ +
+ + + + + + + + + + + +
+
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +

Allow external network access

+

Allow access to external network resources via a proxy. Resources hosted on Launchpad itself are always allowed.

+ +
+ +
+ + +

Build ARG variables

+

The dictionary of ARG variables to be used when building this recipe.

+ +
+ +
+ + +

Build daily

+

If True, this recipe should be built daily.

+ +
+ +
+ + +

Build file path

+

The relative path to the file within this recipe's branch that defines how to build the recipe.

+ +
+ +
+ + +

Build directory context

+

Directory to use for build context and OCIRecipe.build_file location.

+ +
+ +
+ + +Date created + + + + + +Date last modified + + + + + +

Description

+

A short description of this recipe.

+ +
+ +
+ + +

Git branch

+

The Git branch containing a Dockerfile at the location defined by the build_file attribute.

+ +
+ +
+ + +

Image name

+

Image name to use on upload to registry. Defaults to recipe name if not set. Only used when Distribution credentials are set.

+ +
+ +
+ + +

Information type

+

The type of information contained in this OCI recipe.

+ +
+ + + + + + + +
+ + +

Name

+

The name of this recipe.

+ +
+ +
+ + +

OCI project

+

The OCI project that this recipe is for.

+ +
+ +
+ + +

Owner

+

The owner of this OCI recipe.

+ +
+ +
+ + +

Processors

+

The architectures for which the OCI recipe should be built.

+ +
+ +
+ + +

Push rules for this OCI recipe.

+

All of the push rules for registry upload that apply to this recipe.

+ +
+ +
+ + +

Registrant

+

The user who registered this recipe.

+ +
+ +
+ + +Webhooks for this target. + + + +
+ + + + +

Allow external network access

+

Allow access to external network resources via a proxy. Resources hosted on Launchpad itself are always allowed.

+ +
+ +
+ + +

Build ARG variables

+

The dictionary of ARG variables to be used when building this recipe.

+ +
+ +
+ + +

Build daily

+

If True, this recipe should be built daily.

+ +
+ +
+ + +

Build file path

+

The relative path to the file within this recipe's branch that defines how to build the recipe.

+ +
+ +
+ + +

Build directory context

+

Directory to use for build context and OCIRecipe.build_file location.

+ +
+ +
+ + +

Description

+

A short description of this recipe.

+ +
+ +
+ + +

Git branch

+

The Git branch containing a Dockerfile at the location defined by the build_file attribute.

+ +
+ +
+ + +

Image name

+

Image name to use on upload to registry. Defaults to recipe name if not set. Only used when Distribution credentials are set.

+ +
+ +
+ + +

Information type

+

The type of information contained in this OCI recipe.

+ +
+ + + + + + + +
+ + +

Name

+

The name of this recipe.

+ +
+ +
+ + +

Owner

+

The owner of this OCI recipe.

+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +A translation file. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +The translation file id. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +A translation template. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +

Template is active

+

If unchecked, people can no longer change the template's translations.

+ +
+ +
+ + +Date for last update + + + + + +

Description

+

Please provide a brief description of the content of this translation template, for example, telling translators if this template contains strings for end-users or other developers.

+ +
+ +
+ + +

Include translations for this template in language packs?

+

Check this box if this template is part of a language pack so its translations should be exported that way.

+ +
+ +
+ + +File format for the source file + + + + + + + + + + + +The translation template id. + + + + + +The number of languages for which we have translations. + + + + + +The number of translation messages for this template. + + + + + +

Template name

+

The name of this PO template, for example 'evolution-2.2'. Each translation template has a unique name in its package. It's important to get this correct, because Launchpad will recommend alternative translations based on the name.

+ +
+ +
+ + +

Owner

+

The owner of the template in Launchpad can edit the template and change it's status, and can also upload new versions of the template when a new release is made or when the translation strings have been changed during development.

+ +
+ +
+ + +Path of the template in the source tree, including filename. + + + + + +

Priority

+

A number that describes how important this template is. Often there are multiple templates, and you can use this as a way of indicating which are more important and should be translated first. Pick any number - higher priority templates will generally be listed first.

+ +
+ +
+ + +

Translation domain

+

The translation domain for a translation template. Used with PO file format when generating MO files for inclusion in language pack or MO tarball exports.

+ +
+ +
+ + +All translation files that exist for this template. + + + +
+ + + + +

Template is active

+

If unchecked, people can no longer change the template's translations.

+ +
+ +
+ + +Date for last update + + + + + +

Description

+

Please provide a brief description of the content of this translation template, for example, telling translators if this template contains strings for end-users or other developers.

+ +
+ +
+ + +

Include translations for this template in language packs?

+

Check this box if this template is part of a language pack so its translations should be exported that way.

+ +
+ +
+ + +File format for the source file + + + + + + + + + + + +

Template name

+

The name of this PO template, for example 'evolution-2.2'. Each translation template has a unique name in its package. It's important to get this correct, because Launchpad will recommend alternative translations based on the name.

+ +
+ +
+ + +

Owner

+

The owner of the template in Launchpad can edit the template and change it's status, and can also upload new versions of the template when a new release is made or when the translation strings have been changed during development.

+ +
+ +
+ + +Path of the template in the source tree, including filename. + + + + + +

Priority

+

A number that describes how important this template is. Often there are multiple templates, and you can use this as a way of indicating which are more important and should be translated first. Pick any number - higher priority templates will generally be listed first.

+ +
+ +
+ + +

Translation domain

+

The translation domain for a translation template. Used with PO file format when generating MO files for inclusion in language pack or MO tarball exports.

+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +A Queue item for the archive uploader. + + + + + + + + + + + + + + + + + + + + + + + + + +

URLs for all the source files attached to this upload.

+ +++ + + + +
return:A collection of URLs for this upload.
+ +
+ + + + + + +
+ + +

URLs for all the binary files attached to this upload.

+ +++ + + + +
return:A collection of URLs for this upload.
+ +
+ + + + + + +
+ + +

URLs for all the custom files attached to this upload.

+ +++ + + + +
return:A collection of URLs for this upload.
+ +
+ + + + + + +
+ + +

The properties of the binaries associated with this queue item.

+ +++ + + + +
return:A list of dictionaries, each containing the properties of a +single binary.
+ +
+ + + + + + +
+ + +

Call setAccepted, do a flush, and send notification email.

+
    +
  • Grant karma to people involved with the upload.
  • +
+ +
+ + + + + + +
+ + +Call setRejected, do a flush, and send notification email. + + + + + + +Rejection comment + + + + + + + + + +

Override the source package contained in this queue item.

+ +++ + + + + + + + + + + + + + + + +
param new_component:
 An IComponent to replace the existing one +in the upload's source.
param new_section:
 An ISection to replace the existing one +in the upload's source.
param allowed_components:
 A sequence of components that the +callsite is allowed to override from and to.
param user:The user requesting the override change, used if +allowed_components is None.
raises QueueInconsistentStateError:
 if either the existing +or the new_component are not in the allowed_components +sequence.
+

The override values may be None, in which case they are not +changed.

+ +++ + + + +
return:True if the source was overridden.
+ +
+ + + + + +The new component name. + + + + + +The new section name. + + + + + + +
+ + +

Override binary packages in a binary queue item.

+ +++ + + + + + + + + + + + + + +
param changes:A sequence of mappings of changes to apply. Each +change mapping may have a "name" item which specifies the binary +package name to override; otherwise, the change applies to all +binaries in the upload. It may also have "component", "section", +and "priority" items which replace the corresponding existing +one in the upload's overridden binaries. Any missing items are +left unchanged.
param allowed_components:
 A sequence of components that the +callsite is allowed to override from and to.
param user:The user requesting the override change, used if +allowed_components is None.
raises QueueInconsistentStateError:
 if either the existing +or the new_component are not in the allowed_components +sequence.
return:True if any binaries were overridden.
+ +
+ + + + + +

A sequence of changes to apply.

+

Each item may have a 'name' item which specifies the binary package name to override; otherwise, the change applies to all binaries in the upload. It may also have 'component', 'section', and 'priority' items which replace the corresponding existing one in the upload's overridden binaries.

+ +
+ +
+
+
+ +
+
+ + + + + The canonical link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +

Archive

+

The archive for this upload.

+ +
+ +
+ + +

Changes file URL

+

Librarian URL for the changes file associated with this upload. Will be None if the upload was copied from another series.

+ +
+ +
+ + +Source package component name + + + + + +Whether or not this upload contains binaries + + + + + +Whether or not this upload contains a copy from another series. + + + + + +Whether or not this upload contains sources + + + + + +

Copy source archive

+

The archive from which this package was copied, if any.

+ +
+ +
+ + +

Date created

+

The date this package upload was done.

+ +
+ +
+ + +Architectures related to this item + + + + + +Generic displayname for a queue item + + + + + +This item's displayable source package version + + + + + +

Series

+

The distroseries targeted by this upload.

+ +
+ +
+ + +ID + + + + + +The package upload logs + + + + + +Name of the uploaded source package + + + + + +Source package version + + + + + +

The pocket

+

The pocket targeted by this upload.

+ +
+ + + + + + +
+ + +Source package section name + + + + + +

Queue status

+

The status of this upload.

+ +
+ + + + + + +
+
+ + + + +

Date created

+

The date this package upload was done.

+ +
+ +
+ + +

Series

+

The distroseries targeted by this upload.

+ +
+ +
+ + +

The pocket

+

The pocket targeted by this upload.

+ +
+ + + + + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +A log entry recording a change in a package upload's status. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +User's comment about this change. + + + + + +When this action happened. + + + + + +New status. + + + + + + + + + + +Old status. + + + + + + + + + + +The package upload that generated this log + + + + + +Who did this action. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +An interface for package sets. + + + + + + + + + + + + + + + + + + + + + + + + + +

Get all package sets that include this one.

+

Return all package sets that directly or indirectly include this one.

+ +++ + + + + + + +
param direct_inclusion:
 if this flag is set to True only sets +directly including this one will be considered.
return:A (potentially empty) sequence of IPackageset instances.
+ +
+ + + + + + + + + + + + + +
+ + +

Get all package sets that are included by this one.

+

Return all package sets that are directly or indirectly +included by this one.

+ +++ + + + + + + +
param direct_inclusion:
 if this flag is set to True only sets +directly included by this one will be considered.
return:A (potentially empty) sequence of IPackageset instances.
+ +
+ + + + + + + + + + + + + +
+ + +

Get all source names associated with this package set.

+

This method returns the source package names that are directly +or indirectly associated with the package set at hand. Indirect +associations may be defined through package set successors.

+

Please note: this method was mainly introduced in order to +facilitate the listing of source package names via the LP +web services API. It returns string names as opposed to +ISourcePackageName instances.

+ +++ + + + + + + +
param direct_inclusion:
 if this flag is set to True only sources +directly included by this package set will be considered.
return:A (potentially empty) sequence of string source package +names.
+ +
+ + + + + + + + + + +
+ + +

Get source package names also included by another package set.

+

What source package names does this package set have in common with +the other_package_set?

+

Please note: this method was mainly introduced in order to +facilitate the listing of source package names via the LP +web services API. It returns string names as opposed to +ISourcePackageName instances.

+ +++ + + + + + + + + + +
param other_package_set:
 the other package set
param direct_inclusion:
 if this flag is set to True only directly +included sources will be considered.
return:A (potentially empty) sequence of string source package +names.
+ +
+ + + + + +The package set we are comparing to. + + + + + + + + + + +
+ + +

Get source package names not included by another package set.

+

Which source package names included by this package are not +included by the other_package_set?

+

Please note: this method was mainly introduced in order to +facilitate the listing of source package names via the LP +web services API. It returns string names as opposed to +ISourcePackageName instances.

+ +++ + + + + + + + + + +
param other_package_set:
 the other package set
param direct_inclusion:
 if this flag is set to True only directly +included sources will be considered.
return:A (potentially empty) sequence of string source package +names.
+ +
+ + + + + +The package set we are comparing to. + + + + + + + + + + +
+ + +

Get all other package sets in this set's PackagesetGroup.

+

Returns all package sets that are related to this one, but not +this one itself.

+ +++ + + + +
return:A (potentially empty) sequence of IPackageset instances.
+ +
+ + + + + + + + + +
+ + +

Add the named source packages to this package set.

+

Any passed source package names will become directly associated +with the package set at hand.

+

This function is idempotent in the sense that source package names +that are already directly associated with a package set will be +ignored.

+

This method facilitates the addition of source package names to +package sets via the LP web services API. It takes string names +as opposed to ISourcePackageName instances. Non-existing source +package names will be ignored.

+ +++ + + + +
param names:an iterable with string source package names
+ +
+ + + + + +A list of source package names. + + + + + + +
+ + +

Remove the named source packages from this package set.

+

Only source package names directly included by this package +set can be removed. Any others will be ignored.

+

This method facilitates the removal of source package names from +package sets via the LP web services API. It takes string names +as opposed to ISourcePackageName instances.

+ +++ + + + +
param names:an iterable with string source package names
+ +
+ + + + + +A list of source package names. + + + + + + +
+ + +

Add the named package sets as subsets to this package set.

+

Any passed source package names will become directly associated +with the package set at hand.

+

This function is idempotent in the sense that package subsets +that are already directly associated with a package set will be +ignored.

+

This method facilitates the addition of package subsets via the +LP web services API. It takes string names as opposed to +IPackageset instances.

+ +++ + + + +
param names:an iterable with string package set names
+ +
+ + + + + +A list of package set names. + + + + + + +
+ + +

Remove the named package subsets from this package set.

+

Only package subsets directly included by this package +set can be removed. Any others will be ignored.

+

This method facilitates the removal of package subsets via the +LP web services API. It takes string names as opposed to +IPackageset instances.

+ +++ + + + +
param names:an iterable with string package set names
+ +
+ + + + + +A list of package set names. + + + + + + +
+
+ + + + + The canonical link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +

Date Created

+

The creation date/time for the package set at hand.

+ +
+ +
+ + +

Description

+

The description for the package set at hand.

+ +
+ +
+ + +

Distribution series

+

The distroseries to which this package set is related.

+ +
+ +
+ + +ID + + + + + +Valid package set name + + + + + +

Person

+

The person who owns this package set.

+ +
+ +
+ + +

Build score

+

Build score bonus for packages in this package set.

+ +
+ +
+
+ + + + +

Description

+

The description for the package set at hand.

+ +
+ +
+ + +Valid package set name + + + + + +

Person

+

The person who owns this package set.

+ +
+ +
+ + +

Build score

+

Build score bonus for packages in this package set.

+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +A Person. + + + + + + + + + + + + + + + + + + + + + + + + + +

Return entries in the translation import queue for this entity.

+ +++ + + + + + + + +
arg import_status:
 RosettaImportStatus DB Schema entry.
arg file_extension:
 String with the file type extension, usually 'po' +or 'pot'.
+

If one of both of 'import_status' or 'file_extension' are given, the +returned entries are filtered based on those values.

+ +
+ + + + + +

Status

+

Show only entries with this status

+ +
+ + + + + + + + +
+ + +

Filename extension

+

Show only entries with this filename suffix

+ +
+ +
+ +
+ + + + +
+ + +

Search the IBugTasks reported on this entity.

+ +++ + + + +
search_params:a BugTaskSearchParams object
+

Return an iterable of matching results.

+

Note: milestone is currently ignored for all IBugTargets +except IProduct.

+ +
+ + + + + +List of fields by which the results are ordered. + + + + + +Bug ID or search text. + + + + + +

Status

+

Show only bugs with the given status value or list of values.

+ +
+ +
+ + +

Importance

+

Show only bugs with the given importance or list of importances.

+ +
+ +
+ + +

Information Type

+

Show only bugs with the given information type or list of information types.

+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Show only bugs with patches available. + + + + + +Show only bugs associated with a CVE + + + + + +

Tags

+

String or list of strings for tags to search. To exclude, prepend a '-', e.g. '-unwantedtag'

+ +
+ +
+ + +

Tags combination

+

Search for any or all of the tags specified.

+ +
+ + + +
+ + +Omit bugs marked as duplicate, + + + + + +

Status upstream

+

Indicates the status of any remote watches associated with the bug. Possible values include: pending_bugwatch, hide_upstream, resolved_upstream, and open_upstream.

+ +
+ +
+ + +

Milestone

+

Show only bug tasks targeted to this milestone.

+ +
+ +
+ + +

Component

+

Distribution package archive grouping. E.g. main, universe, multiverse

+ +
+ +
+ + + + + + +Exclude bugs with packages specified + + + + + +Search for bugs that are linked to branches or for bugs that are not linked to branches. + + + + + + + + +Search for bugs that have been modified since the given date. + + + + + +Search for bugs that have been created since the given date. + + + + + +Search for bugs that were created before the given date. + + + + + +Omit bugs targeted to a series + + + + + +Search for bugs that are linked to blueprints or for bugs that are not linked to blueprints. + + + + + + + +
+ + + + +
+ + +

Returns merge proposals where a person was asked to review.

+

This does not include merge proposals that were requested from +teams that the person is part of. If status is not passed then +it will return proposals that are in the "Needs Review" state.

+ +++ + + + + + + + + +
param status:A list of statuses to filter with.
param visible_by_user:
 Normally the user who is asking.
returns:A list of IBranchMergeProposal.
+ +
+ + + + + +A list of merge proposal statuses to filter by. + + + + + + + + + +
+ + +

Returns all merge proposals of a given status.

+ +++ + + + + + + + + + + + +
param status:A list of statuses to filter with.
param visible_by_user:
 Normally the user who is asking.
param eager_load:
 If True, load related objects for the whole +collection.
returns:A list of IBranchMergeProposal.
+ +
+ + + + + +A list of merge proposal statuses to filter by. + + + + + + + + + +
+ + +

Returns all branches with the given lifecycle status.

+ +++ + + + + + + + + + + + + + + +
param status:A list of statuses to filter with.
param visible_by_user:
 Normally the user who is asking.
param modified_since:
 If set, filters the branches being returned +to those that have been modified since the specified date/time.
param eager_load:
 If True load related objects for the whole +collection.
returns:A list of IBranch.
+ +
+ + + + + +A list of branch lifecycle statuses to filter by. + + + + + +Limit the branches to those modified since this date. + + + + + + + + + +
+ + +Return Social Accounts associated to the user. + + + + + + +Social Platform Type + + + + + + + + + + +Return the person's recipe with the given name. + + + + + + + + + + + + + + + + + +

Return private archive URLs that this person can see.

+

For each of the private archives (PPAs) that this person can see, +return a URL that includes the HTTP basic auth data. The URL +returned is suitable for including in a sources.list file.

+ +
+ + + + + + +
+ + +

Return the packages for which this person is a bug subscriber.

+

Returns a list of IDistributionSourcePackage's, ordered alphabetically +(A to Z) by name.

+ +
+ + + + + + + + + +
+ + +

Return the people whose membership on this team match :status:.

+

If no orderby is provided, Person.sortingColumns is used.

+ +
+ + + + + +The state of this membership + + + + + + + + + + + + + + + + + +
+ + +

Return a PPA with the given name if it exists.

+ +++ + + + + + + + +
param name:A string with the exact name of the ppa being looked up.
raises:NoSuchPPA if a suitable PPA could not be found.
return:a PPA IArchive record corresponding to the name.
+ +
+ + + + + + + + + + + + + + + + + +
+ + +

Search the person's questions.

+ +++ + + + + + + + + + + + + + + + + +
param search_text:
 A string that is matched against the question +title and description. If None, the search_text is not included as +a filter criteria.
param status:A sequence of QuestionStatus Items. If None or an empty +sequence, the status is not included as a filter criteria. The +default is to match all status except Expired and Invalid.
param language:An ILanguage or a sequence of ILanguage objects to +match against the question's language. If None or an empty +sequence, the language is not included as a filter criteria.
param participation:
 A list of QuestionParticipation that defines the +set of relationship to questions that will be searched. If None or +an empty sequence, all relationships are considered.
param needs_attention:
 If this flag is true, only questions that +need attention the person will be included. These are the +questions in the NEEDSINFO or ANSWERED state owned by the person. +The questions not owned by the person but on which the person +requested more information or gave an answer and that are back in +the OPEN state are also included.
param sort:An attribute of QuestionSort. If None, a default value is +used. When there is a search_text value, the default is to sort by +RELEVANCY, otherwise results are sorted NEWEST_FIRST.
+ +
+ + + + + +Search text + + + + + +Status + + + + + +Language + + + + + +Participation + + + + + + + + + + +Needs attentions from + + + + + +Sort + + + + + + + + + + + + + + +
+ + +

Return a list of IQuestionTargets that a person is subscribed to.

+

This will return IQuestionTargets that the person is registered as an +answer contact because they subscribed themselves.

+ +
+ + + + + + + + + +
+ + +

Return a list of IQuestionTargets that are indirect subscriptions.

+

This will return IQuestionTargets that the person or team is +registered as an answer contact because of their membership in a team.

+ +
+ + + + + + + + + +
+ + +Return (private) archives subscription for this person. + + + + + + + + + + + + + +

Projects owned by this person or teams to which they belong.

+ +++ + + + + +
param match_name:
 string optional project name to screen the results.
+ +
+ + + + + + + + + +
+ + +

Return the teams that this person owns.

+

The iterator includes the teams that the user owns, but it not +a member of.

+ +
+ + + + + + + + + +
+ + +Specify the location and time zone of a person. + + + + + + +The latitude of this object. + + + + + +The longitude of this object. + + + + + +The time zone of this object. + + + + + + + + + +

Join the given team if its membership_policy is not RESTRICTED.

+

Join the given team according to the policies and defaults of that +team:

+
    +
  • If the team membership_policy is OPEN, the user is added as +an APPROVED member with a NULL TeamMembership.reviewer.
  • +
  • If the team membership_policy is MODERATED, the user is added as +a PROPOSED member and one of the team's administrators have to +approve the membership.
  • +
+

If may_subscribe_to_list is True, then also attempt to +subscribe to the team's mailing list, depending on the list +status and the person's auto-subscribe settings.

+ +++ + + + + + + + +
param requester:
 The person who requested the membership on +behalf of a team or None when a person requests the +membership for themselves.
param may_subscribe_to_list:
 If True, also try subscribing to +the team mailing list.
+ +
+ + + + + +Team + + + + + + +
+ + +

Leave the given team.

+

This is a convenience method for retractTeamMembership() that allows +a user to leave the given team, or to cancel a PENDING membership +request.

+ +++ + + + +
param team:The team to leave.
+ +
+ + + + + +Team + + + + + + +
+ + +

Add the given person as a member of this team.

+ +++ + + + + + + + + + + + + + + + + + +
param person:If the given person is already a member of this +team we'll simply change its membership status. Otherwise a new +TeamMembership is created with the given status.
param reviewer:The user who made the given person a member of this +team.
param comment:String that will be assigned to the +proponent_comment, reviewer_comment, or acknowledger comment.
param status:TeamMembershipStatus value must be either +Approved, Proposed or Admin. +If the new member is a team, the status will be changed to +Invited unless the user is also an admin of that team.
param force_team_add:
 If the person is actually a team and +force_team_add is False, the team will actually be invited to +join this one. Otherwise the team is added as if it were a +person.
param may_subscribe_to_list:
 If the person is not a team, and +may_subscribe_to_list is True, then the person may be subscribed +to the team's mailing list, depending on the list status and the +person's auto-subscribe settings.
return:A tuple containing a boolean indicating when the +membership status changed and the current TeamMembershipStatus. +This depends on the desired status passed as an argument, the +membership policy and the user's privileges.
+ +
+ + + + + +Member + + + + + +The state of this membership + + + + + + + + + + + + + + + + + + +
+ + +

Accept an invitation to become a member of the given team.

+

There must be a TeamMembership for this person and the given team with +the INVITED status. The status of this TeamMembership will be changed +to APPROVED.

+ +
+ + + + + +Team + + + + + + + + + + +
+ + +

Decline an invitation to become a member of the given team.

+

There must be a TeamMembership for this person and the given team with +the INVITED status. The status of this TeamMembership will be changed +to INVITATION_DECLINED.

+ +
+ + + + + +Team + + + + + + + + + + +
+ + +

Retract this team's membership in the given team.

+

If there's a membership entry for this team on the given team and +its status is either APPROVED, ADMIN, PENDING, or INVITED, the status +is changed and the relevant entries in TeamParticipation.

+

APPROVED and ADMIN status are changed to DEACTIVATED. +PENDING status is changed to DECLINED. +INVITED status is changes to INVITATION_DECLINED.

+ +++ + + + + + + + +
param team:The team to leave.
param user:The user making the retraction.
param comment:An optional explanation about why the change was made.
+ +
+ + + + + +Team + + + + + + + + + + +
+ + +

Create a PPA.

+ +++ + + + + + + + + + + + + + + + + + + + + + +
param distribution:
 The distribution that this archive is for.
param name:The name of the new PPA to create.
param displayname:
 The displayname for the new PPA.
param description:
 The description for the new PPA.
param private:Whether or not to create a private PPA. Defaults to +False, which means the PPA will be public.
param suppress_subscription_notifications:
 Whether or not to suppress +emails to new subscribers about their subscriptions. Only +meaningful for private PPAs.
raises:PPACreationError if an error is encountered
return:a PPA IArchive record.
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +

Create a SourcePackageRecipe owned by this person.

+ +++ + + + + + + + + + + + + + + + + + + + + + + + +
param name:the name to use for referring to the recipe.
param description:
 A description of the recipe.
param recipe_text:
 The text of the recipe.
param distroseries:
 The distroseries to use.
param registrant:
 The person who created this recipe.
param daily_build_archive:
 The archive to use for daily builds.
param build_daily:
 If True, build this recipe daily (if changed).
return:a SourcePackageRecipe.
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +

Get a text line that is suitable to be used for a sources.list +entry.

+

It will create a new IArchiveAuthToken if one doesn't already exist.

+

It raises Unauthorized if the context user does not have a +valid subscription for the target archive or the caller is not +context user itself.

+ +
+ + + + + + + + + + +
+ + +Set the status of this person's account. + + + + + + +The status of this account + + + + + + + + + + + + +Status change comment + + + + + + + + + +

Add a language to this person's preferences.

+ +++ + + + +
param language:An object providing ILanguage.
+

If the given language is one of the user's preferred languages +already, nothing will happen.

+ +
+ + + + + + + + + + +
+ + +

Remove a language from this person's preferences.

+ +++ + + + +
param language:An object providing ILanguage.
+

If the given language is not present, nothing will happen.

+ +
+ + + + + + + + + + +
+
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +The status of this person's account + + + + + + + + + + + + +Account status history + + + + + +List of this team's admins. + + + + + +

All specifications

+

A list of all specifications, regardless of status or approval or completion, for this object.

+ +
+ +
+ + +

Default PPA

+

The PPA named 'ppa' owned by this person.

+ +
+ +
+ + +

Confirmed emails of this person.

+

Confirmed emails are the ones in the VALIDATED state

+ +
+ +
+ + +Date Created + + + + + +Former members of the team. + + + + + +

Description

+

Details about interests and goals. Use plain text, paragraphs are preserved and URLs are linked.

+ +
+ +
+ + +

Display Name

+

Your name as you would like it displayed throughout Launchpad. Most people use their full name here.

+ +
+ +
+ + +Expired members of the team. + + + + + +List of valid OpenPGP keys ordered by ID + + + + + +Hide my email addresses from other Launchpad users + + + + + +

Homepage Content

+

Obsolete. Use description.

+ +
+ +
+ + +

ID

+

Internal immutable identifier for this person. Only visible by privileged users.

+ +
+ +
+ + +Other teams which have been invited to become members of this team. + + + + + +List of IRC nicknames of this Person. + + + + + +Is this a probationary user? + + + + + +Is this object a team? + + + + + +Signed Ubuntu Code of Conduct + + + + + +This is an active user or a team. + + + + + +List of Jabber IDs of this Person. + + + + + +

Karma

+

The cached total karma for this person.

+ +
+ +
+ + +List of languages known by this person + + + + + +

Logo

+

An image of exactly 64x64 pixels that will be displayed in the heading of all pages related to you. Traditionally this is a logo, a small picture or a personal mascot. It should be no bigger than 50kb in size.

+ +
+ +
+ + +

Mailing List Auto-subscription Policy

+

This attribute determines whether a person is automatically subscribed to a team's mailing list when the person joins said team.

+ +
+ + + + +
+ + +List of direct members with ADMIN or APPROVED status + + + + + +

Active TeamMemberships for this object's members.

+

Active TeamMemberships are the ones with the ADMIN or APPROVED status. The results are ordered using Person.sortingColumns.

+ +
+ +
+ + +All TeamMemberships for Teams this Team or Person is an active member of. + + + + + +

Mugshot

+

A large image of exactly 192x192 pixels, that will be displayed on your home page in Launchpad. Traditionally this is a great big picture of your grinning face. Make the most of it! It should be no bigger than 100kb in size.

+ +
+ +
+ + +

Name

+

A short unique name, beginning with a lower-case letter or number, and containing only letters, numbers, dots, hyphens, or plus signs.

+ +
+ +
+ + +

Open membership invitations.

+

All TeamMemberships which represent an invitation (to join a team) sent to this person.

+ +
+ +
+ + +

All participants of this team.

+

List of all direct and indirect people and teams who, one way or another, are a part of this team. If you want a method to check if a given person is a member of a team, you should probably look at IPerson.inTeam().

+ +
+ +
+ + +

PPAs for this person.

+

PPAs owned by the context person ordered by name.

+ +
+ +
+ + +

Preferred email address

+

The preferred email address for this person. The one we'll use to communicate with them.

+ +
+ +
+ + +

This team is private

+

Private teams are visible only to their members.

+ +
+ +
+ + +People who have applied to join the team. + + + + + +All recipes associated with the object. + + + + + +List of Social Accounts of this Person. + + + + + +List of SSH keys + + + + + +

All subteams of this team.

+

A subteam is any team that is a member (either directly or +indirectly) of this team. As an example, let's say we have +this hierarchy of teams:

+
+
Rosetta Translators
+
+
Rosetta pt Translators
+
Rosetta pt_BR Translators
+
+
+
+

In this case, both 'Rosetta pt Translators' and 'Rosetta pt_BR +Translators' are subteams of the 'Rosetta Translators' team, +and all members of both subteams are considered members of +"Rosetta Translators".

+ +
+ +
+ + +

All superteams of this team.

+

A superteam is any team that this team is a member of. For +example, let's say we have this hierarchy of teams, and we are +the "Rosetta pt_BR Translators":

+
+
Rosetta Translators
+
+
Rosetta pt Translators
+
Rosetta pt_BR Translators
+
+
+
+

In this case, we will return both 'Rosetta pt Translators' and +'Rosetta Translators', because we are member of both of them.

+ +
+ +
+ + +Team Owner + + + + + +The time zone of this object. + + + + + +

Valid specifications

+

All specifications that are not obsolete. When called from an ISpecificationGoal it will also exclude the ones that have not been accepted for that goal

+ +
+ +
+ + +

Visibility

+

Anyone can see a public team's data. Only team members can see private team data.

+ +
+ + + +
+ + +All WikiNames of this Person, sorted alphabetically by URL. + + + +
+ + + + +

Description

+

Details about interests and goals. Use plain text, paragraphs are preserved and URLs are linked.

+ +
+ +
+ + +

Display Name

+

Your name as you would like it displayed throughout Launchpad. Most people use their full name here.

+ +
+ +
+ + +Hide my email addresses from other Launchpad users + + + + + +

Homepage Content

+

Obsolete. Use description.

+ +
+ +
+ + +

Logo

+

An image of exactly 64x64 pixels that will be displayed in the heading of all pages related to you. Traditionally this is a logo, a small picture or a personal mascot. It should be no bigger than 50kb in size.

+ +
+ +
+ + +

Mailing List Auto-subscription Policy

+

This attribute determines whether a person is automatically subscribed to a team's mailing list when the person joins said team.

+ +
+ + + + +
+ + +

Mugshot

+

A large image of exactly 192x192 pixels, that will be displayed on your home page in Launchpad. Traditionally this is a great big picture of your grinning face. Make the most of it! It should be no bigger than 100kb in size.

+ +
+ +
+ + +

Name

+

A short unique name, beginning with a lower-case letter or number, and containing only letters, numbers, dots, hyphens, or plus signs.

+ +
+ +
+ + +Team Owner + + + + + +

Visibility

+

Anyone can see a public team's data. Only team members can see private team data.

+ +
+ + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

An object that might be a project, a project group, or a distribution.

+

This is a polymorphic object served by the pillar set. Check the +individual object to see what type it is.

+ +
+ + + + + + + + + + + + + + + + + + + + + + +
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +

Active

+

Whether or not this item is active.

+ +
+ +
+
+ + + + +

Active

+

Whether or not this item is active.

+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

An object for searching across projects, project groups, and distros.

+

Projects, project groups, and distributions are collectively known as +"pillars". This object lets you do a combined search across all +types of pillars. It also gives you access to pillars that have +been flagged by administrators as "featured" pillars.

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + +

Return Projects/Project groups/Distros matching :text:.

+

If :limit: is None, the default batch size will be used.

+

The results are ordered descending by rank.

+ +
+ + + + + +Search text + + + + + +Maximum number of items to return. This is a hard limit: any pagination you request will happen within this limit. + + + + + + + + + +
+
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +Projects, project groups, and distributions that are featured on the site. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +A poll for a given proposition in a team. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +

Users can spoil their votes?

+

Allow users to leave the ballot blank (i.e. cast a vote for "None of the above")

+ +
+ +
+ + +The date and time when this poll closes + + + + + +The date and time when this poll opens + + + + + +

The unique name of this poll

+

A short unique name, beginning with a lower-case letter or number, and containing only letters, numbers, dots, hyphens, or plus signs.

+ +
+ +
+ + +The proposition that is going to be voted + + + + + +The secrecy of the Poll + + + + + + + + +The team that this poll refers to. + + + + + +The title of this poll + + + + + +The type of this poll + + + + + +
+ + + + +

Users can spoil their votes?

+

Allow users to leave the ballot blank (i.e. cast a vote for "None of the above")

+ +
+ +
+ + +The date and time when this poll closes + + + + + +The date and time when this poll opens + + + + + +

The unique name of this poll

+

A short unique name, beginning with a lower-case letter or number, and containing only letters, numbers, dots, hyphens, or plus signs.

+ +
+ +
+ + +The proposition that is going to be voted + + + + + +The secrecy of the Poll + + + + + + + + +The title of this poll + + + + + +The type of this poll + + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

A diff generated to show actual diff between two branches.

+

This diff will be used primarily for branch merge proposals where we are +trying to determine the effective changes of landing the source branch on +the target branch.

+ +
+ + + + + + + + + + + + + + + + + + + + + + +
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +The number of lines added in this diff. + + + + + +The branch merge proposal that diff relates to. + + + + + +The conflicts text describing any path or text conflicts. + + + + + +

Date Created

+

When this diff was created.

+ +
+ +
+ + +The number of lines in this diff. + + + + + +Content of this diff + + + + + +Statistics about this diff + + + + + +

DB ID

+

The tracking number for this diff.

+ +
+ +
+ + +The tip revision id of the prerequisite branch used to generate the diff. + + + + + +The number of lines removed in this diff. + + + + + +The tip revision id of the source branch used to generate the diff. + + + + + +If the preview diff is stale, it is out of date when compared to the tip revisions of the source, target, and possibly prerequisite branches. + + + + + +The tip revision id of the target branch used to generate the diff. + + + + + +

Title

+

PreviewDiff title.

+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +The Storm Processor Interface + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The canonical link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +Whether this processor is enabled on archives by default. + + + + + +

Description

+

The Processor Description

+ +
+ +
+ + +

Name

+

The Processor Name

+ +
+ +
+ + +Whether this processor is restricted. + + + + + +

Supports non-virtualized builds

+

Whether the processor has non-virtualized builders. If not, all builds for this processor will build on virtualized builders, even for non-virtualized archives.

+ +
+ +
+ + +

Supports virtualized builds

+

Whether the processor has virtualized builders. If not, archives that require virtualized builds won't build on this processor.

+ +
+ +
+ + +

Title

+

The Processor Title

+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

A Product.

+

The Launchpad Registry describes the open source world as ProjectGroups +and Products. Each ProjectGroup may be responsible for several Products. +For example, the Mozilla Project has Firefox, Thunderbird and The +Mozilla App Suite as Products, among others.

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + +

Return all the subscriptions with the specified levels.

+ +++ + + + +
return:A sequence of IStructuralSubscription.
+ +
+ + + + + + + + + +
+ + +Return the subscription for person, if it exists. + + + + + + + + + + + + + + + + + +Is user subscribed, directly or via a team, to bug mail? + + + + + + + + + + +Returns the specification with the given name, for this target, +or None. + + + + + + +The name of the specification + + + + + + + + + + + + +

Return the questions from the collection matching search criteria.

+ +++ + + + + + + + + + + + + + + + +
param search_text:
 A string that is matched against the question +title and description. If None, the search_text is not included as +a filter criteria.
param status:A sequence of QuestionStatus Items. If None or an empty +sequence, the status is not included as a filter criteria. The +default is to match all status except Expired and Invalid.
param language:An ILanguage or a sequence of ILanguage objects to +match against the question's language. If None or an empty +sequence, the language is not included as a filter criteria.
param owner:The IPerson that created the question.
param needs_attention_from:
 Selects questions that need attention +from an IPerson. These are the questions in the NEEDSINFO or +ANSWERED state owned by the person. The questions not owned by the +person but on which the person requested more information or gave +an answer and that are back in the OPEN state are also included.
param sort:An attribute of QuestionSort. If None, a default value is +used. When there is a search_text value, the default is to sort by +RELEVANCY, otherwise results are sorted NEWEST_FIRST.
+ +
+ + + + + +Search text + + + + + +Status + + + + + +Language + + + + + +Owner + + + + + +Needs attentions from + + + + + +Sort + + + + + + + + + + + + + + +
+ + +

Return the question by its id, if it is applicable to this target.

+ +++ + + + +
question_id:A question id.
+

If there is no such question number for this target, return None

+ +
+ + + + + +Question Number + + + + + + +
+ + +

Return questions similar to phrase.

+

Return a list of question similar to the provided phrase. These +questions will be found using a fuzzy search. The list is +ordered from the most similar question to the least similar question.

+ +++ + + + +
param phrase:A phrase such as the summary of a question.
+ +
+ + + + + +A phrase + + + + + + + + + +
+ + +

Return the list of Persons that provide support for a language.

+

An answer contact supports questions in their preferred languages.

+ +
+ + + + + + + + + + + + + +
+ + +

Return a list of languages spoken by at the answer contacts.

+

An answer contact is considered to speak a given language if that +language is listed as one of their preferred languages.

+ +
+ + + + + + + + + +
+ + +

Can the user add or remove the answer contact.

+

Users can add or remove themselves or one of the teams they +administered. Admins and target owners can add/remove anyone.

+ +++ + + + + + + +
param person:The IPerson that is or will be an answer contact.
param subscribed_by:
 The IPerson making the change.
+ +
+ + + + + +The user or an administered team + + + + + + +
+ + +

Return entries in the translation import queue for this entity.

+ +++ + + + + + + + +
arg import_status:
 RosettaImportStatus DB Schema entry.
arg file_extension:
 String with the file type extension, usually 'po' +or 'pot'.
+

If one of both of 'import_status' or 'file_extension' are given, the +returned entries are filtered based on those values.

+ +
+ + + + + +

Status

+

Show only entries with this status

+ +
+ + + + + + + + +
+ + +

Filename extension

+

Show only entries with this filename suffix

+ +
+ +
+ +
+ + + + +
+ + +

Search the IBugTasks reported on this entity.

+ +++ + + + +
search_params:a BugTaskSearchParams object
+

Return an iterable of matching results.

+

Note: milestone is currently ignored for all IBugTargets +except IProduct.

+ +
+ + + + + +List of fields by which the results are ordered. + + + + + +Bug ID or search text. + + + + + +

Status

+

Show only bugs with the given status value or list of values.

+ +
+ +
+ + +

Importance

+

Show only bugs with the given importance or list of importances.

+ +
+ +
+ + +

Information Type

+

Show only bugs with the given information type or list of information types.

+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Show only bugs with patches available. + + + + + +Show only bugs associated with a CVE + + + + + +

Tags

+

String or list of strings for tags to search. To exclude, prepend a '-', e.g. '-unwantedtag'

+ +
+ +
+ + +

Tags combination

+

Search for any or all of the tags specified.

+ +
+ + + +
+ + +Omit bugs marked as duplicate, + + + + + +

Status upstream

+

Indicates the status of any remote watches associated with the bug. Possible values include: pending_bugwatch, hide_upstream, resolved_upstream, and open_upstream.

+ +
+ +
+ + +

Milestone

+

Show only bug tasks targeted to this milestone.

+ +
+ +
+ + +

Component

+

Distribution package archive grouping. E.g. main, universe, multiverse

+ +
+ +
+ + + + + + +Exclude bugs with packages specified + + + + + +Search for bugs that are linked to branches or for bugs that are not linked to branches. + + + + + + + + +Search for bugs that have been modified since the given date. + + + + + +Search for bugs that have been created since the given date. + + + + + +Search for bugs that were created before the given date. + + + + + +Omit bugs targeted to a series + + + + + +Search for bugs that are linked to blueprints or for bugs that are not linked to blueprints. + + + + + + + +
+ + + + +
+ + +

Returns all merge proposals of a given status.

+ +++ + + + + + + + + + + + +
param status:A list of statuses to filter with.
param visible_by_user:
 Normally the user who is asking.
param eager_load:
 If True, load related objects for the whole +collection.
returns:A list of IBranchMergeProposal.
+ +
+ + + + + +A list of merge proposal statuses to filter by. + + + + + + + + + +
+ + +

Returns all branches with the given lifecycle status.

+ +++ + + + + + + + + + + + + + + +
param status:A list of statuses to filter with.
param visible_by_user:
 Normally the user who is asking.
param modified_since:
 If set, filters the branches being returned +to those that have been modified since the specified date/time.
param eager_load:
 If True load related objects for the whole +collection.
returns:A list of IBranch.
+ +
+ + + + + +A list of branch lifecycle statuses to filter by. + + + + + +Limit the branches to those modified since this date. + + + + + + + + + +
+ + +Return a milestone with the given name for this object, or None. + + + + + + +Name + + + + + + + + + + + + +Return the series for this product for the given name, or None. + + + + + + +Name + + + + + + + + + + + + +Return the release for this product that has the version given. + + + + + + +Version + + + + + + + + + + + + +

Return basic timeline data useful for creating a diagram.

+

The number of milestones returned per series is limited.

+ +
+ + + + + +Include inactive + + + + + + +
+ + +

Find OOPS reports between start_date and end_date.

+ +++ + + + + + + + + +
param start_date:
 Do not look in objects whose last modification time +is before this date.
param end_date:Do not look in objects whose last modification time +is after this date.
return:A set of OOPS id's - strings of the form 'OOPS-w+'.
+ +
+ + + + + +Modified after date + + + + + +Modified before date + + + + + + +
+ + +

Return personal access tokens for this target.

+ +++ + + + + + + + +
param visible_by_user:
 If given, return only access tokens visible +by this user.
param include_expired:
 If True, include expired access tokens. +This must only be used for non-authentication purposes, such as +deleting database rows.
+ +
+ + + + + + + + + +
+ + +

Add a bug subscription for this structure.

+

This method is used to create a new IStructuralSubscription for the +target. This initially has a single filter which will allow all +notifications will be sent.

+ +++ + + + + + + + +
subscriber:The IPerson who will be subscribed. If omitted, +subscribed_by will be used.
subscribed_by:The IPerson creating the subscription.
return:The new bug subscription.
+ +
+ + + + + +Person to subscribe. If omitted, the requesting user will be subscribed. + + + + + + + + + + + +
+ + +

Add a bug subscription filter for this structure.

+

This method is used to create a new IBugSubscriptionFilter for the +target. It will initially allow all notifications to be sent.

+ +++ + + + + + + + +
subscriber:The IPerson who will be subscribed. If omitted, +subscribed_by will be used.
subscribed_by:The IPerson creating the subscription.
return:The new bug subscription filter.
+ +
+ + + + + +Person to subscribe. If omitted, the requesting user will be subscribed. + + + + + + + + + + + +
+ + +

Remove a subscription to bugs from this structure.

+

This will delete all associated filters.

+ +++ + + + + + + +
subscriber:The IPerson who will be unsubscribed. If omitted, +unsubscribed_by will be used.
unsubscribed_by:
 The IPerson removing the subscription.
+ +
+ + + + + +Person to unsubscribe. If omitted, the requesting user will be unsubscribed. + + + + + + +
+ + +

Add a new answer contact.

+ +++ + + + + + + + + + + + +
param person:An IPerson.
param subscribed_by:
 The user making the change.
return:True if the person was added, False if the person already is +an answer contact.
raises AddAnswerContactError:
 When the person or team does no have a +preferred language.
+ +
+ + + + + +The user of an administered team + + + + + + +
+ + +

Remove an answer contact.

+ +++ + + + + + + + + +
param person:An IPerson.
param subscribed_by:
 The user making the change.
return:True if the person was removed, False if the person wasn't an +answer contact.
+ +
+ + + + + +The user of an administered team + + + + + + +
+ + +

Issue a personal access token for this target.

+

Access tokens can be used to push to repositories over HTTPS. These may +be used in webservice API requests for certain methods in the target's +repositories.

+

They are either non-expiring or with an expiry time given by +date_expires.

+ +++ + + + +
return:The secret for a new personal access token (Launchpad only +records the hash of this secret and not the secret itself, so the +caller must be careful to save this).
+ +
+ + + + + +A short description of the token. + + + + + +A list of scopes to be granted by this token. + + + + + +When the token should expire. + + + + + + +
+ + +Create a new webhook. + + + + + + +Delivery URL + + + + + +

Active

+

Deliver details of subscribed events.

+ +
+ +
+ + +Event types + + + + + +

Secret

+

An optional string used to sign delivery bodies with HMAC-SHA1 in the X-Hub-Signature header. This must be less than 200 bytes long.

+ +
+ +
+
+
+ + + + + + +
+ + +

Create a new code import.

+ +++ + + + + + + + + + + + + + + + + + + + + + + + +
param registrant:
 The IPerson to record as the registrant of the +import.
param branch_name:
 The name of the branch or repository to create.
param rcs_type:The type of the foreign VCS.
param target_rcs_type:
 The type of the branch or repository to +create (Bazaar or Git).
param url:The URL to import from if the VCS type uses a single URL +(i.e. isn't CVS).
param cvs_root:The CVSROOT for a CVS import.
param cvs_module:
 The module to import for a CVS import.
param owner:Who should own the created branch or repository, or +None for it to be the same as the registrant, or the caller over +the API.
returns:An instance of ICodeImport.
+ +
+ + + + + +Name of branch to create + + + + + + + + + + + + + + + + + + + + + +Foreign VCS URL + + + + + +CVS root URL + + + + + +CVS module to import + + + + + +Owner of the resulting branch + + + + + + + + + + + +
+ + +

Creates a new IProductSeries for this IProduct.

+ +++ + + + + + + + + + + + + +
param owner:The registrant of this series.
param name:The unique name of this series.
param summary:The summary of the purpose and focus of development +of this series.
param branch:The bazaar branch that contains the code for +this series.
param releasefileglob:
 The public URL pattern where release files can +be automatically downloaded from and linked to this series.
+ +
+ + + + + +

Name

+

The name of the series is a short, unique name that identifies it, being used in URLs. It must be all lowercase, with no special characters. For example, '2.0' or 'trunk'.

+ +
+ +
+ + +

Summary

+

A single paragraph that explains the goals of of this series and the intended users. For example: "The 2.0 series of Apache represents the current stable series, and is recommended for all new deployments".

+ +
+ +
+ + +

Branch

+

The Bazaar branch for this series. Leave blank if this series is not maintained in Bazaar.

+ +
+ +
+ + +

Release URL pattern

+

A URL pattern that matches releases that are part of this series. Launchpad automatically scans this site to import new releases. Example: http://ftp.gnu.org/gnu/emacs/emacs-21.*.tar.gz

+ +
+ +
+
+
+ + + + + + +
+ + +Add tag to the official bug tags of this target. + + + + + + +The official bug tag + + + + + + + + + +Remove tag from the official bug tags of this target. + + + + + + +The official bug tag + + + + + + + +
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +

Active

+

Whether or not this item is active.

+ +
+ +
+ + +The visible and active milestones associated with this object, ordered by date expected. + + + + + +All milestones associated with this object, ordered by date expected. + + + + + +

All specifications

+

A list of all specifications, regardless of status or approval or completion, for this object.

+ +
+ +
+ + +

Branch sharing policy

+

Sharing policy for this project's branches.

+ +
+ + + + + + + +
+ + +

Brand

+

A large image of exactly 192x192 pixels, that will be displayed on this project's home page in Launchpad. It should be no bigger than 100kb in size.

+ +
+ +
+ + +

After reporting a bug, I can expect the following.

+

This message of acknowledgement will be displayed to anyone after reporting a bug.

+ +
+ +
+ + +

Helpful guidelines for reporting a bug

+

These guidelines will be shown to everyone reporting a bug and should be text or a bulleted list with your particular requirements, if any.

+ +
+ +
+ + +

Bug sharing policy

+

Sharing policy for this project's bugs.

+ +
+ + + + + + + +
+ + +

Bug Supervisor

+

The Launchpad id of the person or team (preferred) responsible for bug management.

+ +
+ +
+ + +Bugs are tracked + + + + + +

Commercial subscriptions

+

An object which contains the timeframe and the voucher code of a subscription.

+ +
+ +
+ + +

Commercial subscription is due

+

Whether the project's licensing requires a new commercial subscription to use launchpad.

+ +
+ +
+ + +

Date Created

+

The date this project was created in Launchpad.

+ +
+ +
+ + +

Description

+

Details about the project's work, highlights, goals, and how to contribute. Use plain text, paragraphs are preserved and URLs are linked in pages. Don't repeat the Summary.

+ +
+ +
+ + +

Development focus

+

The series that represents the master or trunk branch. The Bazaar URL lp:<project> points to the development focus series branch.

+ +
+ +
+ + +

Display Name

+

The name of the project as it would appear in a +paragraph.

+ +
+ +
+ + +

Download URL

+

The full URL where downloads for this project +are located, if available. Please include the http://

+ +
+ +
+ + +

Driver

+

This person or team will be able to set feature goals for and approve bug targeting or backporting for ANY major series in this project. You might want to leave this blank and just appoint a team for each specific series, rather than having one project team that does it all.

+ +
+ +
+ + +

Freshmeat Project

+

The Freshmeat project name for +this project, if it is in freshmeat. [DEPRECATED]

+ +
+ +
+ + +

Homepage URL

+

The project home page. Please include +the http://

+ +
+ +
+ + +

Icon

+

A small image of exactly 14x14 pixels and at most 5kb in size, that can be used to identify this project. The icon will be displayed next to the project name everywhere in Launchpad that we refer to the project and link to it.

+ +
+ +
+ + +

Information Type

+

The type of data contained in this item.

+ +
+ + + + + + + +
+ + +

Is Permitted

+

Whether the project's licensing qualifies for free hosting or the project has an up-to-date subscription.

+ +
+ +
+ + +

Licence approved

+

The project is legitimate and its licence appears valid. Not applicable to 'Other/Proprietary'.

+ +
+ +
+ + +

Description of additional licences

+

Description of licences that do not appear in the list above.

+ +
+ +
+ + +Licences + + + + + +

Logo

+

An image of exactly 64x64 pixels that will be displayed in the heading of all pages related to this project. It should be no bigger than 50kb in size.

+ +
+ +
+ + +

Name

+

At least one lowercase letter or number, followed by letters, numbers, dots, hyphens or pluses. Keep this name short; it is used in URLs as shown above.

+ +
+ +
+ + +People can ask questions in Launchpad Answers + + + + + +This project uses blueprints + + + + + +

Official Bug Tags

+

The list of bug tags defined as official.

+ +
+ +
+ + +Bugs in this project are tracked in Launchpad + + + + + +Code for this project is published in Bazaar branches on Launchpad + + + + + +

Maintainer

+

The restricted team, moderated team, or person who maintains the project information in Launchpad.

+ +
+ +
+ + +

Product is confidential

+

This product is visible only to those with access grants.

+ +
+ +
+ + +

Programming Languages

+

A comma delimited list of programming +languages used for this project.

+ +
+ +
+ + +

Part of

+

Project group. This is an overarching initiative that includes several related projects. For example, the Mozilla Project produces Firefox, Thunderbird and Gecko. This information is used to group those projects in a coherent way. If you make this project part of a group, the group preferences and decisions around bug tracking, translation and security policy will apply to this project.

+ +
+ +
+ + +

Project reviewed

+

Whether or not this project has been reviewed. If you looked at the project and how it uses Launchpad, you reviewed it.

+ +
+ +
+ + +

Qualifies for free hosting

+

Whether the project's licensing qualifies it for free use of launchpad.

+ +
+ +
+ + +All recipes associated with the object. + + + + + +

Registrant

+

This person registered the project in Launchpad.

+ +
+ +
+ + +An iterator over the ProductReleases for this product. + + + + + +

Remote bug tracker project id

+

Some bug trackers host multiple projects at the same URL and require an identifier for the specific project.

+ +
+ +
+ + +

Notes for the project reviewer

+

Notes on the project's licence, editable only by reviewers (Admins and Commercial Admins).

+ +
+ +
+ + +

Screenshots URL

+

The full URL for screenshots of this project, +if available. Please include the http://

+ +
+ +
+ + + + + + +

Sourceforge Project

+

The SourceForge project name for +this project, if it is in sourceforge.

+ +
+ +
+ + +

Blueprint sharing policy

+

Sharing policy for this project's specifications.

+ +
+ + + + + + + +
+ + +

Summary

+

A short paragraph to introduce the project's work.

+ +
+ +
+ + +

Title

+

The project title. Should be just a few words.

+ +
+ +
+ + +

Translation focus

+

Project series that translators should focus on.

+ +
+ +
+ + +

Translation group

+

The translation group that helps review translations for this project or distribution. The group's role depends on the permissions policy selected below.

+ +
+ +
+ + +

Translation permissions policy

+

The policy this project or distribution uses to balance openness and control for their translations.

+ +
+ + + + + +
+ + +

Type of service for translations application

+

Where does this pillar do translations?

+ +
+ + + + + +
+ + +

Valid specifications

+

All specifications that are not obsolete. When called from an ISpecificationGoal it will also exclude the ones that have not been accepted for that goal

+ +
+ +
+ + +

VCS

+

Version control system for this project's code.

+ +
+ + + +
+ + +Webhooks for this target. + + + + + +

Wiki URL

+

The full URL of this project's wiki, if it has +one. Please include the http://

+ +
+ +
+
+ + + + +

Active

+

Whether or not this item is active.

+ +
+ +
+ + +

Branch sharing policy

+

Sharing policy for this project's branches.

+ +
+ + + + + + + +
+ + +

Brand

+

A large image of exactly 192x192 pixels, that will be displayed on this project's home page in Launchpad. It should be no bigger than 100kb in size.

+ +
+ +
+ + +

After reporting a bug, I can expect the following.

+

This message of acknowledgement will be displayed to anyone after reporting a bug.

+ +
+ +
+ + +

Helpful guidelines for reporting a bug

+

These guidelines will be shown to everyone reporting a bug and should be text or a bulleted list with your particular requirements, if any.

+ +
+ +
+ + +

Bug sharing policy

+

Sharing policy for this project's bugs.

+ +
+ + + + + + + +
+ + +

Bug Supervisor

+

The Launchpad id of the person or team (preferred) responsible for bug management.

+ +
+ +
+ + +Bugs are tracked + + + + + +

Commercial subscriptions

+

An object which contains the timeframe and the voucher code of a subscription.

+ +
+ +
+ + +

Description

+

Details about the project's work, highlights, goals, and how to contribute. Use plain text, paragraphs are preserved and URLs are linked in pages. Don't repeat the Summary.

+ +
+ +
+ + +

Development focus

+

The series that represents the master or trunk branch. The Bazaar URL lp:<project> points to the development focus series branch.

+ +
+ +
+ + +

Display Name

+

The name of the project as it would appear in a +paragraph.

+ +
+ +
+ + +

Download URL

+

The full URL where downloads for this project +are located, if available. Please include the http://

+ +
+ +
+ + +

Driver

+

This person or team will be able to set feature goals for and approve bug targeting or backporting for ANY major series in this project. You might want to leave this blank and just appoint a team for each specific series, rather than having one project team that does it all.

+ +
+ +
+ + +

Freshmeat Project

+

The Freshmeat project name for +this project, if it is in freshmeat. [DEPRECATED]

+ +
+ +
+ + +

Homepage URL

+

The project home page. Please include +the http://

+ +
+ +
+ + +

Icon

+

A small image of exactly 14x14 pixels and at most 5kb in size, that can be used to identify this project. The icon will be displayed next to the project name everywhere in Launchpad that we refer to the project and link to it.

+ +
+ +
+ + +

Information Type

+

The type of data contained in this item.

+ +
+ + + + + + + +
+ + +

Licence approved

+

The project is legitimate and its licence appears valid. Not applicable to 'Other/Proprietary'.

+ +
+ +
+ + +

Description of additional licences

+

Description of licences that do not appear in the list above.

+ +
+ +
+ + +Licences + + + + + +

Logo

+

An image of exactly 64x64 pixels that will be displayed in the heading of all pages related to this project. It should be no bigger than 50kb in size.

+ +
+ +
+ + +

Name

+

At least one lowercase letter or number, followed by letters, numbers, dots, hyphens or pluses. Keep this name short; it is used in URLs as shown above.

+ +
+ +
+ + +People can ask questions in Launchpad Answers + + + + + +This project uses blueprints + + + + + +

Official Bug Tags

+

The list of bug tags defined as official.

+ +
+ +
+ + +Bugs in this project are tracked in Launchpad + + + + + +Code for this project is published in Bazaar branches on Launchpad + + + + + +

Maintainer

+

The restricted team, moderated team, or person who maintains the project information in Launchpad.

+ +
+ +
+ + +

Programming Languages

+

A comma delimited list of programming +languages used for this project.

+ +
+ +
+ + +

Part of

+

Project group. This is an overarching initiative that includes several related projects. For example, the Mozilla Project produces Firefox, Thunderbird and Gecko. This information is used to group those projects in a coherent way. If you make this project part of a group, the group preferences and decisions around bug tracking, translation and security policy will apply to this project.

+ +
+ +
+ + +

Project reviewed

+

Whether or not this project has been reviewed. If you looked at the project and how it uses Launchpad, you reviewed it.

+ +
+ +
+ + +

Remote bug tracker project id

+

Some bug trackers host multiple projects at the same URL and require an identifier for the specific project.

+ +
+ +
+ + +

Notes for the project reviewer

+

Notes on the project's licence, editable only by reviewers (Admins and Commercial Admins).

+ +
+ +
+ + +

Screenshots URL

+

The full URL for screenshots of this project, +if available. Please include the http://

+ +
+ +
+ + +

Sourceforge Project

+

The SourceForge project name for +this project, if it is in sourceforge.

+ +
+ +
+ + +

Blueprint sharing policy

+

Sharing policy for this project's specifications.

+ +
+ + + + + + + +
+ + +

Summary

+

A short paragraph to introduce the project's work.

+ +
+ +
+ + +

Translation focus

+

Project series that translators should focus on.

+ +
+ +
+ + +

Translation group

+

The translation group that helps review translations for this project or distribution. The group's role depends on the permissions policy selected below.

+ +
+ +
+ + +

Translation permissions policy

+

The policy this project or distribution uses to balance openness and control for their translations.

+ +
+ + + + + +
+ + +

Type of service for translations application

+

Where does this pillar do translations?

+ +
+ + + + + +
+ + +

VCS

+

Version control system for this project's code.

+ +
+ + + +
+ + +

Wiki URL

+

The full URL of this project's wiki, if it has +one. Please include the http://

+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

A specific release (i.e. version) of a product.

+

For example: Mozilla 1.7.2 or Apache 2.0.48.

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + +

Add file to the library and link to this IProductRelease.

+

The signature file will also be added if available.

+ +++ + + + + + + + + + + + + + + + + + + + + + + + + + + + +
param filename:Name of the file being uploaded.
param file_content:
 io.BytesIO or binary file object.
param content_type:
 A MIME content type string.
param uploader:The person who uploaded the file.
param signature_filename:
 Name of the uploaded gpg signature file.
param signature_content:
 io.BytesIO or binary file object.
param file_type:
 An UpstreamFileType enum value.
param description:
 Info about the file.
returns:IProductReleaseFile object.
raises:InvalidFilename if the filename is invalid or a duplicate +of a file previously added to the release.
+ +
+ + + + + +

Description

+

A detailed description of the file contents

+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + +Upstream file type + + + + + + + + +
+
+ + + + + + +
+ + +

Delete this release.

+

This method must not be used if this release has any +release files associated with it.

+ +
+ + + + + + +
+
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +

Changelog

+

A description of every change in the release.

+ +
+ +
+ + +

Date Created

+

The date this project release was created in Launchpad.

+ +
+ +
+ + +

Date released

+

The date this release was published. Before release, this should have an estimated release date.

+ +
+ +
+ + +Constructed display name for a project release. + + + + + +

Project release files

+

A list of files for this release.

+ +
+ +
+ + +

Milestone for this release

+

A release requires a corresponding milestone that is not attached to another release.

+ +
+ +
+ + +

The registrant of this release.

+

The person or who registered this release.

+ +
+ +
+ + +The project that made this release. + + + + + +

Release notes

+

A description of important new features (though the changelog below might repeat some of this information).

+ +
+ +
+ + +Constructed title for a project release. + + + + + +

Version

+

The specific version number assigned to this release. Letters and numbers are acceptable, for releases like "1.2rc3".

+ +
+ +
+
+ + + + +

Changelog

+

A description of every change in the release.

+ +
+ +
+ + +

Date released

+

The date this release was published. Before release, this should have an estimated release date.

+ +
+ +
+ + +

Milestone for this release

+

A release requires a corresponding milestone that is not attached to another release.

+ +
+ +
+ + +

The registrant of this release.

+

The person or who registered this release.

+ +
+ +
+ + +

Release notes

+

A description of important new features (though the changelog below might repeat some of this information).

+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +A file associated with a ProductRelease. + + + + + + + + + + + + + + + + + + + + + + + + + +Delete the product release file. + + + + + + + + + + + + + + The canonical link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +

Upload date

+

The date this file was uploaded

+ +
+ +
+ + +

Description

+

A detailed description of the file contents

+ +
+ +
+ + +

File

+

The file contents.

+ +
+ +
+ + +Upstream file type + + + + + + + + + + +

Project release

+

The parent product release.

+ +
+ +
+ + +

File signature

+

The file signature.

+ +
+ +
+
+ + + + +

Description

+

A detailed description of the file contents

+ +
+ +
+ + +Upstream file type + + + + + + + + + + +

Project release

+

The parent product release.

+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +A series of releases. For example '2.0' or '1.3' or 'dev'. + + + + + + + + + + + + + + + + + + + + + + + + + +

Search the IBugTasks reported on this entity.

+ +++ + + + +
search_params:a BugTaskSearchParams object
+

Return an iterable of matching results.

+

Note: milestone is currently ignored for all IBugTargets +except IProduct.

+ +
+ + + + + +List of fields by which the results are ordered. + + + + + +Bug ID or search text. + + + + + +

Status

+

Show only bugs with the given status value or list of values.

+ +
+ +
+ + +

Importance

+

Show only bugs with the given importance or list of importances.

+ +
+ +
+ + +

Information Type

+

Show only bugs with the given information type or list of information types.

+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Show only bugs with patches available. + + + + + +Show only bugs associated with a CVE + + + + + +

Tags

+

String or list of strings for tags to search. To exclude, prepend a '-', e.g. '-unwantedtag'

+ +
+ +
+ + +

Tags combination

+

Search for any or all of the tags specified.

+ +
+ + + +
+ + +Omit bugs marked as duplicate, + + + + + +

Status upstream

+

Indicates the status of any remote watches associated with the bug. Possible values include: pending_bugwatch, hide_upstream, resolved_upstream, and open_upstream.

+ +
+ +
+ + +

Milestone

+

Show only bug tasks targeted to this milestone.

+ +
+ +
+ + +

Component

+

Distribution package archive grouping. E.g. main, universe, multiverse

+ +
+ +
+ + + + + + +Exclude bugs with packages specified + + + + + +Search for bugs that are linked to branches or for bugs that are not linked to branches. + + + + + + + + +Search for bugs that have been modified since the given date. + + + + + +Search for bugs that have been created since the given date. + + + + + +Search for bugs that were created before the given date. + + + + + +Omit bugs targeted to a series + + + + + +Search for bugs that are linked to blueprints or for bugs that are not linked to blueprints. + + + + + + + +
+ + + + +
+ + +

Return all the subscriptions with the specified levels.

+ +++ + + + +
return:A sequence of IStructuralSubscription.
+ +
+ + + + + + + + + +
+ + +Return the subscription for person, if it exists. + + + + + + + + + + + + + + + + + +Is user subscribed, directly or via a team, to bug mail? + + + + + + + + + + +

Return entries in the translation import queue for this entity.

+ +++ + + + + + + + +
arg import_status:
 RosettaImportStatus DB Schema entry.
arg file_extension:
 String with the file type extension, usually 'po' +or 'pot'.
+

If one of both of 'import_status' or 'file_extension' are given, the +returned entries are filtered based on those values.

+ +
+ + + + + +

Status

+

Show only entries with this status

+ +
+ + + + + + + + +
+ + +

Filename extension

+

Show only entries with this filename suffix

+ +
+ +
+ +
+ + + + +
+ + +Returns the specification with the given name, for this target, +or None. + + + + + + +The name of the specification + + + + + + + + + + + + +

Return an iterator over all its translation templates.

+

The returned templates are either obsolete or current.

+ +++ + + + +
return:A sequence of IPOTemplate.
+ +
+ + + + + + + + + +
+ + +

Return basic timeline data useful for creating a diagram.

+

The number of milestones returned is limited.

+ +
+ + + + + +Include inactive + + + + + + +
+ + +

Add a bug subscription for this structure.

+

This method is used to create a new IStructuralSubscription for the +target. This initially has a single filter which will allow all +notifications will be sent.

+ +++ + + + + + + + +
subscriber:The IPerson who will be subscribed. If omitted, +subscribed_by will be used.
subscribed_by:The IPerson creating the subscription.
return:The new bug subscription.
+ +
+ + + + + +Person to subscribe. If omitted, the requesting user will be subscribed. + + + + + + + + + + + +
+ + +

Add a bug subscription filter for this structure.

+

This method is used to create a new IBugSubscriptionFilter for the +target. It will initially allow all notifications to be sent.

+ +++ + + + + + + + +
subscriber:The IPerson who will be subscribed. If omitted, +subscribed_by will be used.
subscribed_by:The IPerson creating the subscription.
return:The new bug subscription filter.
+ +
+ + + + + +Person to subscribe. If omitted, the requesting user will be subscribed. + + + + + + + + + + + +
+ + +

Remove a subscription to bugs from this structure.

+

This will delete all associated filters.

+ +++ + + + + + + +
subscriber:The IPerson who will be unsubscribed. If omitted, +unsubscribed_by will be used.
unsubscribed_by:
 The IPerson removing the subscription.
+ +
+ + + + + +Person to unsubscribe. If omitted, the requesting user will be unsubscribed. + + + + + + +
+ + +Create a new milestone for this ProjectSeries. + + + + + + +

Name

+

Only letters, numbers, and simple punctuation are allowed.

+ +
+ +
+ + +

Date Targeted

+

Example: 2005-11-24

+ +
+ +
+ + +

Summary

+

A summary of the features and status of this milestone.

+ +
+ +
+ + +

Code name

+

An alternative name for the milestone.

+ +
+ +
+
+
+ + + + + + +
+
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +

Active

+

Whether or not this series is stable and supported, or under current development. This excludes series which are experimental or obsolete.

+ +
+ +
+ + +The visible milestones associated with this project series, ordered by date expected. + + + + + +All milestones associated with this project series, ordered by date expected. + + + + + +

All specifications

+

A list of all specifications, regardless of status or approval or completion, for this object.

+ +
+ +
+ + +

Branch

+

The Bazaar branch for this series. Leave blank if this series is not maintained in Bazaar.

+ +
+ +
+ + +

After reporting a bug, I can expect the following.

+

This message of acknowledgement will be displayed to anyone after reporting a bug.

+ +
+ +
+ + +

Helpful guidelines for reporting a bug

+

These guidelines will be shown to everyone reporting a bug and should be text or a bulleted list with your particular requirements, if any.

+ +
+ +
+ + +Date Registered + + + + + +

Display Name

+

Display name. In this case we have removed the underlying database field, and this attribute just returns the name.

+ +
+ +
+ + +

Release manager

+

The person or team responsible for decisions about features and bugs that will be targeted to this series. If you don't nominate someone here, then the owners and drivers of the project and project group will automatically have those permissions.

+ +
+ +
+ + +A list of the people or teams who are drivers for this series. This list is made up of any drivers or owners from this series and the parent drivers. + + + + + +

Name

+

The name of the series is a short, unique name that identifies it, being used in URLs. It must be all lowercase, with no special characters. For example, '2.0' or 'trunk'.

+ +
+ +
+ + +

Official Bug Tags

+

The list of bug tags defined as official.

+ +
+ +
+ + +

Owner

+

Project owner, either a valid Person or Team

+ +
+ +
+ + +Project + + + + + +

Release URL pattern

+

A URL pattern that matches releases that are part of this series. Launchpad automatically scans this site to import new releases. Example: http://ftp.gnu.org/gnu/emacs/emacs-21.*.tar.gz

+ +
+ +
+ + +An iterator over the releases in this Series, sorted with latest release first. + + + + + +Status + + + + + + + + + + + + +

Summary

+

A single paragraph that explains the goals of of this series and the intended users. For example: "The 2.0 series of Apache represents the current stable series, and is recommended for all new deployments".

+ +
+ +
+ + +

Title

+

The product series title. Should be just a few words.

+ +
+ +
+ + +

Import settings

+

Specify which files will be imported from the source code branch.

+ +
+ + + + +
+ + +

Type of service for translations application

+

Where does this pillar do translations?

+ +
+ + + + + +
+ + +

Valid specifications

+

All specifications that are not obsolete. When called from an ISpecificationGoal it will also exclude the ones that have not been accepted for that goal

+ +
+ +
+
+ + + + +

Active

+

Whether or not this series is stable and supported, or under current development. This excludes series which are experimental or obsolete.

+ +
+ +
+ + +

Branch

+

The Bazaar branch for this series. Leave blank if this series is not maintained in Bazaar.

+ +
+ +
+ + +

After reporting a bug, I can expect the following.

+

This message of acknowledgement will be displayed to anyone after reporting a bug.

+ +
+ +
+ + +

Helpful guidelines for reporting a bug

+

These guidelines will be shown to everyone reporting a bug and should be text or a bulleted list with your particular requirements, if any.

+ +
+ +
+ + +

Display Name

+

Display name. In this case we have removed the underlying database field, and this attribute just returns the name.

+ +
+ +
+ + +

Release manager

+

The person or team responsible for decisions about features and bugs that will be targeted to this series. If you don't nominate someone here, then the owners and drivers of the project and project group will automatically have those permissions.

+ +
+ +
+ + +

Name

+

The name of the series is a short, unique name that identifies it, being used in URLs. It must be all lowercase, with no special characters. For example, '2.0' or 'trunk'.

+ +
+ +
+ + +

Owner

+

Project owner, either a valid Person or Team

+ +
+ +
+ + +Project + + + + + +

Release URL pattern

+

A URL pattern that matches releases that are part of this series. Launchpad automatically scans this site to import new releases. Example: http://ftp.gnu.org/gnu/emacs/emacs-21.*.tar.gz

+ +
+ +
+ + +Status + + + + + + + + + + + + +

Summary

+

A single paragraph that explains the goals of of this series and the intended users. For example: "The 2.0 series of Apache represents the current stable series, and is recommended for all new deployments".

+ +
+ +
+ + +

Title

+

The product series title. Should be just a few words.

+ +
+ +
+ + +

Import settings

+

Specify which files will be imported from the source code branch.

+ +
+ + + + +
+ + +

Type of service for translations application

+

Where does this pillar do translations?

+ +
+ + + + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +A ProjectGroup. + + + + + + + + + + + + + + + + + + + + + + + + + +

Return all the subscriptions with the specified levels.

+ +++ + + + +
return:A sequence of IStructuralSubscription.
+ +
+ + + + + + + + + +
+ + +Return the subscription for person, if it exists. + + + + + + + + + + + + + + + + + +Is user subscribed, directly or via a team, to bug mail? + + + + + + + + + + +

Search the IBugTasks reported on this entity.

+ +++ + + + +
search_params:a BugTaskSearchParams object
+

Return an iterable of matching results.

+

Note: milestone is currently ignored for all IBugTargets +except IProduct.

+ +
+ + + + + +List of fields by which the results are ordered. + + + + + +Bug ID or search text. + + + + + +

Status

+

Show only bugs with the given status value or list of values.

+ +
+ +
+ + +

Importance

+

Show only bugs with the given importance or list of importances.

+ +
+ +
+ + +

Information Type

+

Show only bugs with the given information type or list of information types.

+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Show only bugs with patches available. + + + + + +Show only bugs associated with a CVE + + + + + +

Tags

+

String or list of strings for tags to search. To exclude, prepend a '-', e.g. '-unwantedtag'

+ +
+ +
+ + +

Tags combination

+

Search for any or all of the tags specified.

+ +
+ + + +
+ + +Omit bugs marked as duplicate, + + + + + +

Status upstream

+

Indicates the status of any remote watches associated with the bug. Possible values include: pending_bugwatch, hide_upstream, resolved_upstream, and open_upstream.

+ +
+ +
+ + +

Milestone

+

Show only bug tasks targeted to this milestone.

+ +
+ +
+ + +

Component

+

Distribution package archive grouping. E.g. main, universe, multiverse

+ +
+ +
+ + + + + + +Exclude bugs with packages specified + + + + + +Search for bugs that are linked to branches or for bugs that are not linked to branches. + + + + + + + + +Search for bugs that have been modified since the given date. + + + + + +Search for bugs that have been created since the given date. + + + + + +Search for bugs that were created before the given date. + + + + + +Omit bugs targeted to a series + + + + + +Search for bugs that are linked to blueprints or for bugs that are not linked to blueprints. + + + + + + + +
+ + + + +
+ + +

Returns all merge proposals of a given status.

+ +++ + + + + + + + + + + + +
param status:A list of statuses to filter with.
param visible_by_user:
 Normally the user who is asking.
param eager_load:
 If True, load related objects for the whole +collection.
returns:A list of IBranchMergeProposal.
+ +
+ + + + + +A list of merge proposal statuses to filter by. + + + + + + + + + +
+ + +

Returns all branches with the given lifecycle status.

+ +++ + + + + + + + + + + + + + + +
param status:A list of statuses to filter with.
param visible_by_user:
 Normally the user who is asking.
param modified_since:
 If set, filters the branches being returned +to those that have been modified since the specified date/time.
param eager_load:
 If True load related objects for the whole +collection.
returns:A list of IBranch.
+ +
+ + + + + +A list of branch lifecycle statuses to filter by. + + + + + +Limit the branches to those modified since this date. + + + + + + + + + +
+ + +Return a milestone with the given name for this object, or None. + + + + + + +Name + + + + + + + + + + + + +

Add a bug subscription for this structure.

+

This method is used to create a new IStructuralSubscription for the +target. This initially has a single filter which will allow all +notifications will be sent.

+ +++ + + + + + + + +
subscriber:The IPerson who will be subscribed. If omitted, +subscribed_by will be used.
subscribed_by:The IPerson creating the subscription.
return:The new bug subscription.
+ +
+ + + + + +Person to subscribe. If omitted, the requesting user will be subscribed. + + + + + + + + + + + +
+ + +

Add a bug subscription filter for this structure.

+

This method is used to create a new IBugSubscriptionFilter for the +target. It will initially allow all notifications to be sent.

+ +++ + + + + + + + +
subscriber:The IPerson who will be subscribed. If omitted, +subscribed_by will be used.
subscribed_by:The IPerson creating the subscription.
return:The new bug subscription filter.
+ +
+ + + + + +Person to subscribe. If omitted, the requesting user will be subscribed. + + + + + + + + + + + +
+ + +

Remove a subscription to bugs from this structure.

+

This will delete all associated filters.

+ +++ + + + + + + +
subscriber:The IPerson who will be unsubscribed. If omitted, +unsubscribed_by will be used.
unsubscribed_by:
 The IPerson removing the subscription.
+ +
+ + + + + +Person to unsubscribe. If omitted, the requesting user will be unsubscribed. + + + + + + +
+
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +

Active

+

Whether or not this item is active.

+ +
+ +
+ + +The visible and active milestones associated with this object, ordered by date expected. + + + + + +All milestones associated with this object, ordered by date expected. + + + + + +

All specifications

+

A list of all specifications, regardless of status or approval or completion, for this object.

+ +
+ +
+ + +

After reporting a bug, I can expect the following.

+

This message of acknowledgement will be displayed to anyone after reporting a bug.

+ +
+ +
+ + +

If I’m reporting a bug, I should include, if possible

+

These guidelines will be shown to anyone reporting a bug.

+ +
+ +
+ + +

Bug Tracker

+

The bug tracker the projects in this project group use.

+ +
+ +
+ + +

Date Created

+

The date this project group was created in Launchpad.

+ +
+ +
+ + +

Description

+

Details about the project group's work, goals, and how to contribute. Use plain text, paragraphs are preserved and URLs are linked in pages. Don't repeat the Summary.

+ +
+ +
+ + +

Display Name

+

Appropriately capitalised, and typically ending in "Project". Examples: the Apache Project, the Mozilla Project, the Gimp Project.

+ +
+ +
+ + +

Driver

+

This is a project group-wide appointment. Think carefully here! This person or team will be able to set feature goals and approve bug targeting and backporting for ANY series in ANY project in this group. You can also appoint drivers at the level of a specific project or series. So you may just want to leave this space blank, and instead let the individual projects and series have drivers.

+ +
+ +
+ + +

Freshmeat Project Name

+

The Freshmeat project name for this project group, if it is in Freshmeat. [DEPRECATED]

+ +
+ +
+ + +

Homepage Content

+

The content of this project group's home page. Edit this and it will be displayed for all the world to see. It is NOT a wiki so you cannot undo changes.

+ +
+ +
+ + +

Homepage URL

+

The project group home page. Please include the http://

+ +
+ +
+ + +

Icon

+

A small image of exactly 14x14 pixels and at most 5kb in size, that can be used to identify this project group. The icon will be displayed in Launchpad everywhere that we link to this project group. For example in listings or tables of active project groups.

+ +
+ +
+ + +

Logo

+

An image of exactly 64x64 pixels that will be displayed in the heading of all pages related to this project group. It should be no bigger than 50kb in size.

+ +
+ +
+ + +

Brand

+

A large image of exactly 192x192 pixels, that will be displayed on this project group's home page in Launchpad. It should be no bigger than 100kb in size.

+ +
+ +
+ + +

Name

+

A unique name, used in URLs, identifying the project group. All lowercase, no special characters. Examples: apache, mozilla, gimp.

+ +
+ +
+ + +

Official Bug Tags

+

The list of bug tags defined as official.

+ +
+ +
+ + +

Maintainer

+

The restricted team, moderated team, or person who maintains the project group information in Launchpad.

+ +
+ +
+ + +List of active projects for this project group. + + + + + +

Registrant

+

Project group registrant. Must be a valid Launchpad Person.

+ +
+ +
+ + +

Reviewed

+

Whether or not this project group has been reviewed.

+ +
+ +
+ + +

SourceForge Project Name

+

The SourceForge project name for this project group, if it is in SourceForge.

+ +
+ +
+ + +

Project Group Summary

+

A short paragraph to introduce the project group's work.

+ +
+ +
+ + +

Title

+

The full name of the project group, which can contain spaces, special characters, etc.

+ +
+ +
+ + +

Translation group

+

The translation group that helps review translations for this project or distribution. The group's role depends on the permissions policy selected below.

+ +
+ +
+ + +

Translation permissions policy

+

The policy this project or distribution uses to balance openness and control for their translations.

+ +
+ + + + + +
+ + +

Type of service for translations application

+

Where does this pillar do translations?

+ +
+ + + + + +
+ + +

Valid specifications

+

All specifications that are not obsolete. When called from an ISpecificationGoal it will also exclude the ones that have not been accepted for that goal

+ +
+ +
+ + +

Wiki URL

+

The URL of this project group's wiki, if it has one. Please include the http://

+ +
+ +
+
+ + + + +

Active

+

Whether or not this item is active.

+ +
+ +
+ + +

After reporting a bug, I can expect the following.

+

This message of acknowledgement will be displayed to anyone after reporting a bug.

+ +
+ +
+ + +

If I’m reporting a bug, I should include, if possible

+

These guidelines will be shown to anyone reporting a bug.

+ +
+ +
+ + +

Bug Tracker

+

The bug tracker the projects in this project group use.

+ +
+ +
+ + +

Description

+

Details about the project group's work, goals, and how to contribute. Use plain text, paragraphs are preserved and URLs are linked in pages. Don't repeat the Summary.

+ +
+ +
+ + +

Display Name

+

Appropriately capitalised, and typically ending in "Project". Examples: the Apache Project, the Mozilla Project, the Gimp Project.

+ +
+ +
+ + +

Driver

+

This is a project group-wide appointment. Think carefully here! This person or team will be able to set feature goals and approve bug targeting and backporting for ANY series in ANY project in this group. You can also appoint drivers at the level of a specific project or series. So you may just want to leave this space blank, and instead let the individual projects and series have drivers.

+ +
+ +
+ + +

Freshmeat Project Name

+

The Freshmeat project name for this project group, if it is in Freshmeat. [DEPRECATED]

+ +
+ +
+ + +

Homepage Content

+

The content of this project group's home page. Edit this and it will be displayed for all the world to see. It is NOT a wiki so you cannot undo changes.

+ +
+ +
+ + +

Homepage URL

+

The project group home page. Please include the http://

+ +
+ +
+ + +

Icon

+

A small image of exactly 14x14 pixels and at most 5kb in size, that can be used to identify this project group. The icon will be displayed in Launchpad everywhere that we link to this project group. For example in listings or tables of active project groups.

+ +
+ +
+ + +

Logo

+

An image of exactly 64x64 pixels that will be displayed in the heading of all pages related to this project group. It should be no bigger than 50kb in size.

+ +
+ +
+ + +

Brand

+

A large image of exactly 192x192 pixels, that will be displayed on this project group's home page in Launchpad. It should be no bigger than 100kb in size.

+ +
+ +
+ + +

Name

+

A unique name, used in URLs, identifying the project group. All lowercase, no special characters. Examples: apache, mozilla, gimp.

+ +
+ +
+ + +

Maintainer

+

The restricted team, moderated team, or person who maintains the project group information in Launchpad.

+ +
+ +
+ + +

Reviewed

+

Whether or not this project group has been reviewed.

+ +
+ +
+ + +

SourceForge Project Name

+

The SourceForge project name for this project group, if it is in SourceForge.

+ +
+ +
+ + +

Project Group Summary

+

A short paragraph to introduce the project group's work.

+ +
+ +
+ + +

Title

+

The full name of the project group, which can contain spaces, special characters, etc.

+ +
+ +
+ + +

Translation group

+

The translation group that helps review translations for this project or distribution. The group's role depends on the permissions policy selected below.

+ +
+ +
+ + +

Translation permissions policy

+

The policy this project or distribution uses to balance openness and control for their translations.

+ +
+ + + + + +
+ + +

Type of service for translations application

+

Where does this pillar do translations?

+ +
+ + + + + +
+ + +

Wiki URL

+

The URL of this project group's wiki, if it has one. Please include the http://

+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +A marker interface for milestones related to a project + + + + + + + + + + + + + + + + + + + + + + + + + +

Return all the subscriptions with the specified levels.

+ +++ + + + +
return:A sequence of IStructuralSubscription.
+ +
+ + + + + + + + + +
+ + +Return the subscription for person, if it exists. + + + + + + + + + + + + + + + + + +Is user subscribed, directly or via a team, to bug mail? + + + + + + + + + + +

Search the IBugTasks reported on this entity.

+ +++ + + + +
search_params:a BugTaskSearchParams object
+

Return an iterable of matching results.

+

Note: milestone is currently ignored for all IBugTargets +except IProduct.

+ +
+ + + + + +List of fields by which the results are ordered. + + + + + +Bug ID or search text. + + + + + +

Status

+

Show only bugs with the given status value or list of values.

+ +
+ +
+ + +

Importance

+

Show only bugs with the given importance or list of importances.

+ +
+ +
+ + +

Information Type

+

Show only bugs with the given information type or list of information types.

+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Show only bugs with patches available. + + + + + +Show only bugs associated with a CVE + + + + + +

Tags

+

String or list of strings for tags to search. To exclude, prepend a '-', e.g. '-unwantedtag'

+ +
+ +
+ + +

Tags combination

+

Search for any or all of the tags specified.

+ +
+ + + +
+ + +Omit bugs marked as duplicate, + + + + + +

Status upstream

+

Indicates the status of any remote watches associated with the bug. Possible values include: pending_bugwatch, hide_upstream, resolved_upstream, and open_upstream.

+ +
+ +
+ + +

Milestone

+

Show only bug tasks targeted to this milestone.

+ +
+ +
+ + +

Component

+

Distribution package archive grouping. E.g. main, universe, multiverse

+ +
+ +
+ + + + + + +Exclude bugs with packages specified + + + + + +Search for bugs that are linked to branches or for bugs that are not linked to branches. + + + + + + + + +Search for bugs that have been modified since the given date. + + + + + +Search for bugs that have been created since the given date. + + + + + +Search for bugs that were created before the given date. + + + + + +Omit bugs targeted to a series + + + + + +Search for bugs that are linked to blueprints or for bugs that are not linked to blueprints. + + + + + + + +
+ + + + +
+ + +

Add a bug subscription for this structure.

+

This method is used to create a new IStructuralSubscription for the +target. This initially has a single filter which will allow all +notifications will be sent.

+ +++ + + + + + + + +
subscriber:The IPerson who will be subscribed. If omitted, +subscribed_by will be used.
subscribed_by:The IPerson creating the subscription.
return:The new bug subscription.
+ +
+ + + + + +Person to subscribe. If omitted, the requesting user will be subscribed. + + + + + + + + + + + +
+ + +

Add a bug subscription filter for this structure.

+

This method is used to create a new IBugSubscriptionFilter for the +target. It will initially allow all notifications to be sent.

+ +++ + + + + + + + +
subscriber:The IPerson who will be subscribed. If omitted, +subscribed_by will be used.
subscribed_by:The IPerson creating the subscription.
return:The new bug subscription filter.
+ +
+ + + + + +Person to subscribe. If omitted, the requesting user will be subscribed. + + + + + + + + + + + +
+ + +

Remove a subscription to bugs from this structure.

+

This will delete all associated filters.

+ +++ + + + + + + +
subscriber:The IPerson who will be unsubscribed. If omitted, +unsubscribed_by will be used.
unsubscribed_by:
 The IPerson removing the subscription.
+ +
+ + + + + +Person to unsubscribe. If omitted, the requesting user will be unsubscribed. + + + + + + +
+ + +

Create a new ProductRelease.

+ +++ + + + + + + + + + + + + + + +
param owner:IPerson object who manages the release.
param datereleased:
 Date of the product release.
param changelog:
 Detailed changes in each version.
param release_notes:
 Overview of changes in each version.
returns:IProductRelease object.
+ +
+ + + + + +

Date released

+

The date this release was published. Before release, this should have an estimated release date.

+ +
+ +
+ + +

Changelog

+

A description of every change in the release.

+ +
+ +
+ + +

Release notes

+

A description of important new features (though the changelog below might repeat some of this information).

+ +
+ +
+
+
+ + + + + + +
+
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +

Code name

+

An alternative name for the milestone.

+ +
+ +
+ + +

Date Targeted

+

Example: 2005-11-24

+ +
+ +
+ + +

Active

+

Whether or not this object should be shown in web forms for targeting.

+ +
+ +
+ + +

Name

+

Only letters, numbers, and simple punctuation are allowed.

+ +
+ +
+ + +

Official Bug Tags

+

The list of bug tags defined as official.

+ +
+ +
+ + +The release for this milestone. + + + + + +The productseries or distroseries of this milestone. + + + + + +

Summary

+

A summary of the features and status of this milestone.

+ +
+ +
+ + +The product, distribution, or project group for this milestone. + + + + + +A context title for pages. + + + +
+ + + + +

Code name

+

An alternative name for the milestone.

+ +
+ +
+ + +

Date Targeted

+

Example: 2005-11-24

+ +
+ +
+ + +

Active

+

Whether or not this object should be shown in web forms for targeting.

+ +
+ +
+ + +

Name

+

Only letters, numbers, and simple punctuation are allowed.

+ +
+ +
+ + +The productseries or distroseries of this milestone. + + + + + +

Summary

+

A summary of the features and status of this milestone.

+ +
+ +
+ + +The product, distribution, or project group for this milestone. + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +A single question, often a support request. + + + + + + + + + + + + + + + + + + + + + + + + + +

Mark this question as INVALID.

+

Add an IQuestionMessage with action REJECT. The question status is +changed to INVALID. The created message is set as the question answer +and its owner as the question answerer. The datelastresponse and +date_solved are updated to the message creation.

+

Only answer contacts for the question target, the target owner or a +member of the admin team can reject a request. All questions can be +rejected.

+

Return the created IQuestionMessage.

+

This method should fire an IObjectCreatedEvent for the created +IQuestionMessage and an IObjectModifiedEvent for the question.

+ +++ + + + + + + + +
user:The user rejecting the request.
comment:A string or IMessage containing an explanation of the +rejection.
datecreated:Date for the message. Defaults to the current time.
+ +
+ + + + + +An explanation of the rejection + + + + + + + + + + + +
+ + +

Subscribe person to the question.

+ +++ + + + + + + + + +
param person:the subscriber.
param subscribed_by:
 the person who created the subscription.
return:an IQuestionSubscription.
+ +
+ + + + + +Person + + + + + + +
+ + +

Unsubscribe person from the question.

+ +++ + + + + + + +
param person:the subscriber.
param unsubscribed_by:
 the person who removed the subscription.
+ +
+ + + + + +Person + + + + + + +
+ + +

Set the visible attribute on a question message.

+

This is restricted to Launchpad admins and registry members, and will +return a HTTP Error 401: Unauthorized error for non-admin callers.

+ +
+ + + + + +The number of the comment in the list of messages. + + + + + +Show this comment? + + + + + + +
+
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +

Answer

+

The IQuestionMessage that contains the answer confirmed by the owner as providing a solution to their problem.

+ +
+ +
+ + +

Answered By

+

The person who last provided a response intended to resolve the question.

+ +
+ +
+ + +

Assignee

+

The person responsible for helping to resolve the question.

+ +
+ +
+ + +Date Created + + + + + +

Date Due

+

The date by which we should have resolved this question.

+ +
+ +
+ + +

Date Last Queried

+

The date on which we last heard from the customer (owner).

+ +
+ +
+ + +

Date last Responded

+

The date on which we last communicated with the customer. The combination of datelastquery and datelastresponse tells us in whose court the ball is.

+ +
+ +
+ + +

Date Answered

+

The date on which the question owner confirmed that the question is Solved.

+ +
+ +
+ + +

Description

+

Include as much detail as possible: what you’re trying to achieve, what steps you take, what happens, and what you think should happen instead.

+ +
+ +
+ + +

Question Number

+

The tracking number for this question.

+ +
+ +
+ + +

Language

+

The language in which this question is written.

+ +
+ +
+ + +

Messages

+

The list of messages that were exchanged as part of this question , sorted from first to last.

+ +
+ +
+ + +Owner + + + + + +Status + + + + + + + + + + + +

This question is about

+

The distribution, source package, or project the question pertains to.

+ +
+ +
+ + +

Summary

+

A one-line summary of the issue or problem.

+ +
+ +
+
+ + + + +

Assignee

+

The person responsible for helping to resolve the question.

+ +
+ +
+ + +

Description

+

Include as much detail as possible: what you’re trying to achieve, what steps you take, what happens, and what you think should happen instead.

+ +
+ +
+ + +

Language

+

The language in which this question is written.

+ +
+ +
+ + +

This question is about

+

The distribution, source package, or project the question pertains to.

+ +
+ +
+ + +

Summary

+

A one-line summary of the issue or problem.

+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +A message part of a question. + + + + + + + + + + + + + + + + + + + + + + + + + +Return None because messages are not threaded over the API. + + + + + + + + + + +Edit the content of this message, generating a new message +revision with the old content. + + + + + + +

Message content

+

The new message content string

+ +
+ +
+
+
+ +
+ + +Deletes this message content. + + + + + + + + +
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +Action operated on the question by this message. + + + + + + + + + + + + + + +A list of BugAttachments connected to this message. + + + + + +All the text/plain chunks joined together as a unicode string. + + + + + +Date Created + + + + + +When this message was deleted + + + + + +When this message was last edited + + + + + +

Human readable Message index.

+

The message's index in the question's list of messages.

+ +
+ +
+ + +

Question status after message

+

The status of the question after the transition related the action operated by this message.

+ +
+ + + + + + + +
+ + +Person + + + + + +Parent + + + + + +

The question related to this message.

+

An IQuestion object.

+ +
+ +
+ + +

Message revision history

+

Revision history of this message, sorted in ascending order.

+ +
+ +
+ + +Subject + + + + + +

Message visibility.

+

Whether or not the message is visible.

+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +A subscription for a person to a question. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The canonical link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +Date subscribed + + + + + +

Person

+

The person's Launchpad ID or email address.

+ +
+ +
+ + +Question + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +An object that can have a new question asked about it. + + + + + + + + + + + + + + + + + + + + + + + + + +

Return the questions from the collection matching search criteria.

+ +++ + + + + + + + + + + + + + + + +
param search_text:
 A string that is matched against the question +title and description. If None, the search_text is not included as +a filter criteria.
param status:A sequence of QuestionStatus Items. If None or an empty +sequence, the status is not included as a filter criteria. The +default is to match all status except Expired and Invalid.
param language:An ILanguage or a sequence of ILanguage objects to +match against the question's language. If None or an empty +sequence, the language is not included as a filter criteria.
param owner:The IPerson that created the question.
param needs_attention_from:
 Selects questions that need attention +from an IPerson. These are the questions in the NEEDSINFO or +ANSWERED state owned by the person. The questions not owned by the +person but on which the person requested more information or gave +an answer and that are back in the OPEN state are also included.
param sort:An attribute of QuestionSort. If None, a default value is +used. When there is a search_text value, the default is to sort by +RELEVANCY, otherwise results are sorted NEWEST_FIRST.
+ +
+ + + + + +Search text + + + + + +Status + + + + + +Language + + + + + +Owner + + + + + +Needs attentions from + + + + + +Sort + + + + + + + + + + + + + + +
+ + +

Return the question by its id, if it is applicable to this target.

+ +++ + + + +
question_id:A question id.
+

If there is no such question number for this target, return None

+ +
+ + + + + +Question Number + + + + + + +
+ + +

Return questions similar to phrase.

+

Return a list of question similar to the provided phrase. These +questions will be found using a fuzzy search. The list is +ordered from the most similar question to the least similar question.

+ +++ + + + +
param phrase:A phrase such as the summary of a question.
+ +
+ + + + + +A phrase + + + + + + + + + +
+ + +

Return the list of Persons that provide support for a language.

+

An answer contact supports questions in their preferred languages.

+ +
+ + + + + + + + + + + + + +
+ + +

Return a list of languages spoken by at the answer contacts.

+

An answer contact is considered to speak a given language if that +language is listed as one of their preferred languages.

+ +
+ + + + + + + + + +
+ + +

Can the user add or remove the answer contact.

+

Users can add or remove themselves or one of the teams they +administered. Admins and target owners can add/remove anyone.

+ +++ + + + + + + +
param person:The IPerson that is or will be an answer contact.
param subscribed_by:
 The IPerson making the change.
+ +
+ + + + + +The user or an administered team + + + + + + +
+ + +

Add a new answer contact.

+ +++ + + + + + + + + + + + +
param person:An IPerson.
param subscribed_by:
 The user making the change.
return:True if the person was added, False if the person already is +an answer contact.
raises AddAnswerContactError:
 When the person or team does no have a +preferred language.
+ +
+ + + + + +The user of an administered team + + + + + + +
+ + +

Remove an answer contact.

+ +++ + + + + + + + + +
param person:An IPerson.
param subscribed_by:
 The user making the change.
return:True if the person was removed, False if the person wasn't an +answer contact.
+ +
+ + + + + +The user of an administered team + + + + + + +
+
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +An revision status report for a Git commit. + + + + + + + + + + + + + + + + + + + + + + + + + +

Retrieves the list of URLs for artifacts that exist for this report.

+
+ +++ + + + + +
param artifact_type:
 The type of artifact for the report.
+
+

Scopes: repository:build_status

+ +
+ + + + + + + + + + + + +
+ + +

Set a new log on an existing status report.

+
+ +++ + + + +
param log_data:The contents of the log, either as bytes or as a file +object.
+
+

Scopes: repository:build_status

+ +
+ + + + + +The content of the artifact in bytes. + + + + + + +
+ + +

Attach a new artifact to an existing status report.

+
+ +++ + + + + + + +
param data:The contents of the artifact, either as bytes or as a file +object.
param artifact_type:
 The type of the artifact. This may currently +only be RevisionStatusArtifactType.BINARY, but more types may +be added in future.
+
+

Scopes: repository:build_status

+ +
+ + + + + +The name of the artifact. + + + + + +The content of the artifact in bytes. + + + + + + +
+ + +

Updates a status report.

+
+ +++ + + + + + + + + + + + + + +
param title:A short title for the report.
param url:The external url of the report.
param result_summary:
 A short summary of the result.
param result:The result of the report.
param properties:
 A dictionary of general-purpose metadata.
+
+

Scopes: repository:build_status

+ +
+ + + + + +A short title for the report. + + + + + +The external link of the status report. + + + + + +A short summary of the result. + + + + + + + + + + + + + + + +Properties dictionary + + + + + + +
+
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +The CI build that produced this report. + + + + + +The Git commit for which this report is built. + + + + + +When the report was created. + + + + + +When the report has finished. + + + + + +When the report was started. + + + + + +The series and architecture for the CI build job that produced this report. + + + + + +The Git repository for which this report is built. + + + + + +Metadata for artifacts attached to this report + + + + + +Result of the report + + + + + + + + + + + +A short summary of the result. + + + + + +A short title for the report. + + + + + +

URL

+

The external url of the report.

+ +
+ +
+
+ + + + +When the report has finished. + + + + + +When the report was started. + + + + + +Result of the report + + + + + + + + + + + +A short summary of the result. + + + + + +A short title for the report. + + + + + +

URL

+

The external url of the report.

+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +SSH public key + + + + + + + + + + + + + + + + + + + + + + + + + +Get the full text of the SSH key. + + + + + + + + + + + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +Comment describing this key + + + + + +Key text + + + + + +Key type + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Interface representing a factory used to access named services. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The canonical link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Find projects for which person has one or more access policy grants.

+ +++ + + + + + +
param user:the user making the request. If the user is an admin, then +all projects are returned, else only those for which the user is a +maintainer or driver.
return:a collection of projects
+ +
+ + + + + +Person + + + + + + + + + +
+ + +
+
Find distributions for which person has one or more access policy
+
grants.
+
+ +++ + + + + + +
param user:the user making the request. If the user is an admin, then +all distributions are returned, else only those for which the user +is a maintainer or driver.
return:a collection of distributions
+ +
+ + + + + +Person + + + + + + + + + +
+ + +

Return the bugs shared between the pillar and person.

+

The result includes bugtasks rather than bugs since this is what the +pillar filtering is applied to. The shared bug can be obtained simply +by reading the bugtask.bug attribute.

+ +++ + + + + + +
param user:the user making the request. Only bugs visible to the +user will be included in the result.
return:a collection of bug tasks.
+ +
+ + + + + +Pillar + + + + + +Person + + + + + + + + + +
+ + +

Return the branches shared between the pillar and person.

+ +++ + + + + + +
param user:the user making the request. Only branches visible to the +user will be included in the result.
return:a collection of branches
+ +
+ + + + + +Pillar + + + + + +Person + + + + + + + + + +
+ + +

Return the Git repositories shared between the pillar and person.

+ +++ + + + + + +
param user:the user making the request. Only Git repositories +visible to the user will be included in the result.
return:a collection of Git repositories.
+ +
+ + + + + +Pillar + + + + + +Person + + + + + + + + + +
+ + +

Return the specifications shared between the pillar and person.

+ +++ + + + + + +
param user:the user making the request. Only branches visible to the +user will be included in the result.
return:a collection of specifications.
+ +
+ + + + + +Pillar + + + + + +Person + + + + + + + + + +
+ + +

Return people/teams who can see pillar artifacts.

+
+
The result records are json data which includes:
+
    +
  • person name
  • +
  • permissions they have for each information type.
  • +
+
+
+ +
+ + + + + +Pillar + + + + + + +
+ + +

Ensure grantee has the grants for information types on a pillar.

+ +++ + + + + + + + + + + +
param pillar:the pillar for which to grant access
param grantee:the person or team to grant
param user:the user making the request
param permissions:
 a dict of {InformationType: SharingPermission} +if SharingPermission is ALL, then create an access policy grant +if SharingPermission is SOME, then remove any access policy grants +if SharingPermission is NONE, then remove all grants for the access +policy
+ +
+ + + + + +Pillar + + + + + +Grantee + + + + + + + + + + +
+ + +

Remove a grantee from a pillar.

+ +++ + + + + + + + + + + +
param pillar:the pillar from which to remove access
param grantee:the person or team to remove
param user:the user making the request
param information_types:
 if None, remove all access, otherwise just +remove the specified access_policies
+ +
+ + + + + +Pillar + + + + + +Grantee + + + + + + + + + + +
+ + +

Remove a grantee's access to the specified artifacts.

+ +++ + + + + + + + + + + + + + + + + + + + + + + + + + +
param pillar:the pillar from which to remove access
param grantee:the person or team for whom to revoke access
param user:the user making the request
param bugs:the bugs for which to revoke access
param branches:the branches for which to revoke access
param gitrepositories:
 the Git repositories for which to revoke access
param snaps:The snap recipes for which to revoke access
param specifications:
 the specifications for which to revoke access
param ocirecipes:
 The OCI recipes for which to revoke access
param vulnerabilities:
 The vulnerabilities for which to revoke access
+ +
+ + + + + +Pillar + + + + + +Grantee + + + + + +Bugs + + + + + +Branches + + + + + +Git repositories + + + + + +Snap recipes + + + + + +Specifications + + + + + +OCI recipes + + + + + +Vulnerabilities + + + + + + +
+ + +

Ensure a grantee has an access grant to the specified artifacts.

+ +++ + + + + + + + + + + + + + + + + + + + + + + + +
param grantees:the people or teams for whom to grant access
param user:the user making the request
param bugs:the bugs for which to grant access
param branches:the branches for which to grant access
param gitrepositories:
 the Git repositories for which to grant access
param snaps:the snap recipes for which to grant access
param specifications:
 the specifications for which to grant access
param ocirecipes:
 the OCI recipes for which to grant access
param vulnerabilities:
 the vulnerabilities for which to grant access
+ +
+ + + + + + + + + +Bugs + + + + + +Branches + + + + + +Git repositories + + + + + +Snap recipes + + + + + +OCI recipes + + + + + +Vulnerabilities + + + + + + +
+ + +

Update the sharing policies for a pillar.

+ +++ + + + + + + + + + + + + +
param pillar:the pillar to update
param branch_sharing_policy:
 the new branch sharing policy
param bug_sharing_policy:
 the new bug sharing policy
param specification_sharing_policy:
 new specification sharing policy
+ +
+ + + + + +Pillar + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + The canonical link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +

Name

+

The name of the service, used to generate the url.

+ +
+ +
+
+ + + + +

Name

+

The name of the service, used to generate the url.

+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +A base for snaps. + + + + + + + + + + + + + + + + + + + + + + + + + +

Return the IArchiveDependency object for the given dependency.

+ +++ + + + + + + +
param dependency:
 an IArchive.
return:an IArchiveDependency, or None if a corresponding object +could not be found.
+ +
+ + + + + + + + + + + + + +
+ + +

Add an archive dependency for this snap base.

+ +++ + + + + + + + + + + + + + +
param dependency:
 an IArchive.
param pocket:a PackagePublishingPocket.
param component:
 an optional component name; if not given, the +archive dependency will use the component used for dependencies +on the primary archive.
raise:ArchiveDependencyError if the given dependency does not +fit this snap base.
return:an IArchiveDependency.
+ +
+ + + + + +The archive set as a dependency. + + + + + +Pocket + + + + + + + + + + +Component name + + + + + + + + + + + +
+ + +

Remove the archive dependency on the given archive.

+ +++ + + + + +
param dependency:
 an IArchive.
+ +
+ + + + + + + + + + +
+ + +Set the architectures that the snap base supports. + + + + + + + + + + + + +
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +

Source snap channels for builds

+

A dictionary mapping snap names to channels to use when building snaps that specify this base. The special '_byarch' key may have a mapping of architecture names to mappings of snap names to channels, which if present override the channels declared at the top level when building for those architectures.

+ +
+ +
+ + +Date created + + + + + +Archive dependencies for this snap base. + + + + + +Display name + + + + + +Distro series + + + + + +

Features supported by this base

+

A dictionary designating the features supported by the base. Key is the name of a feature, value is a boolean indicating whether the feature is supported or not.

+ +
+ +
+ + +

Is default?

+

Whether this base is the default for snaps that do not specify a base.

+ +
+ +
+ + +Name + + + + + +

Processors

+

The architectures that the snap base supports.

+ +
+ +
+ + +

Registrant

+

The person who registered this base.

+ +
+ +
+
+ + + + +

Source snap channels for builds

+

A dictionary mapping snap names to channels to use when building snaps that specify this base. The special '_byarch' key may have a mapping of architecture names to mappings of snap names to channels, which if present override the channels declared at the top level when building for those architectures.

+ +
+ +
+ + +Display name + + + + + +Distro series + + + + + +

Features supported by this base

+

A dictionary designating the features supported by the base. Key is the name of a feature, value is a boolean indicating whether the feature is supported or not.

+ +
+ +
+ + +Name + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Build information for snap package builds. + + + + + + + + + + + + + + + + + + + + + + + + + +

URLs for all the files produced by this build.

+ +++ + + + +
return:A collection of URLs for this build.
+ +
+ + + + + + +
+ + +Change the build's score. + + + + + + +Score + + + + + + + + + +

Restore the build record to its initial state.

+

Build record loses its history, is moved to NEEDSBUILD and a new +non-scored BuildQueue entry is created for it.

+ +
+ + + + + + +
+ + +

Cancel the build if it is either pending or in progress.

+

Check the can_be_cancelled property prior to calling this method to +find out if cancelling the build is possible.

+

If the build is in progress, it is marked as CANCELLING until the +buildd manager terminates the build and marks it CANCELLED. If the +build is not in progress, it is marked CANCELLED immediately and is +removed from the build queue.

+

If the build is not in a cancellable state, this method is a no-op.

+ +
+ + + + + + +
+ + +

Schedule an upload of this build to the store.

+ +++ + + + + +
raises CannotScheduleStoreUpload:
 if the build is not in a state +where an upload can be scheduled.
+ +
+ + + + + + +
+
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +Architecture tag + + + + + +The archive from which to build the snap package. + + + + + +

Build Log URL

+

A URL for the build log. None if there is no log available.

+ +
+ +
+ + +

Builder

+

The builder assigned to this job.

+ +
+ +
+ + +

Status

+

The current status of the job.

+ +
+ + + + + + + + + + + + + +
+ + +

Can be cancelled

+

Whether this build record can be cancelled.

+ +
+ +
+ + +

Can be rescored

+

Whether this build record can be rescored manually.

+ +
+ +
+ + +

Can be retried

+

Whether this build record can be retried.

+ +
+ +
+ + +

Source snap channels to use for this build.

+

A dictionary mapping snap names to channels to use for this build. +Supported snap names: 'core', 'core18', 'core20', 'core22', 'core24', 'snapcraft', 'snapd'

+ +
+ +
+ + +

Date finished

+

The actual build start time. Set when the build is dispatched the first time and not changed in subsequent build attempts.

+ +
+ +
+ + +

Date started

+

The timestamp when the build farm job was started.

+ +
+ +
+ + +

Date finished

+

The timestamp when the build farm job was finished.

+ +
+ +
+ + +

Date created

+

The timestamp when the build farm job was created.

+ +
+ +
+ + +

Dependencies

+

Debian-like dependency line that must be satisfied before attempting to build this request.

+ +
+ +
+ + +

Distribution

+

Shortcut for its distribution.

+ +
+ +
+ + +The series and architecture to build on. + + + + + +

Distribution series

+

Shortcut for its distribution series.

+ +
+ +
+ + +

Duration

+

Duration interval, calculated when the result gets collected.

+ +
+ +
+ + +

The pocket for which to build.

+

The package stream within the source archive and distribution series to use when building the snap package. If the source archive is a PPA, then the PPA's archive dependencies will be used to select the pocket in the distribution's primary archive.

+ +
+ + + + + + +
+ + +The person who requested this build. + + + + + +

Revision ID

+

The revision ID of the branch used for this build, if available.

+ +
+ +
+ + +Score of the related build farm job (if any). + + + + + +The snap package to build. + + + + + +The snap base to use for this build. + + + + + +

Store upload error message

+

The error message, if any, from the last attempt to upload this snap build to the store. (Deprecated; use store_upload_error_messages instead.)

+ +
+ +
+ + +

Store upload error messages

+

A list of dict(message, link) where message is an error description and link, if any, is an external link to extra details, from the last attempt to upload this snap build to the store.

+ +
+ +
+ + +

Store revision

+

The revision assigned to this package by the store.

+ +
+ +
+ + +Store upload status + + + + + + + + + + +

Store URL

+

The URL to use for managing this package in the store.

+ +
+ +
+ + +The target architectures to build for. + + + + + +Title + + + + + +

Upload Log URL

+

A URL for failed upload logs.Will be None if there was no failure.

+ +
+ +
+
+ + + + +

Build Log URL

+

A URL for the build log. None if there is no log available.

+ +
+ +
+ + +

Status

+

The current status of the job.

+ +
+ + + + + + + + + + + + + +
+ + +

Source snap channels to use for this build.

+

A dictionary mapping snap names to channels to use for this build. +Supported snap names: 'core', 'core18', 'core20', 'core22', 'core24', 'snapcraft', 'snapd'

+ +
+ +
+ + +

Dependencies

+

Debian-like dependency line that must be satisfied before attempting to build this request.

+ +
+ +
+ + +

Distribution

+

Shortcut for its distribution.

+ +
+ +
+ + +

Distribution series

+

Shortcut for its distribution series.

+ +
+ +
+ + +Store upload status + + + + + + + + + + +Title + + + + + +

Upload Log URL

+

A URL for failed upload logs.Will be None if there was no failure.

+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +A request to build a snap package. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +Builds produced by this request + + + + + +The time when this request finished + + + + + +The time when this request was made + + + + + +Error message + + + + + +Snap package + + + + + +Status + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +A buildable snap package. + + + + + + + + + + + + + + + + + + + + + + + + + +
+
Returns the build (if any) of that snap recipe
+
that has the given store_upload_revision.
+
+ +++ + + + + + + + + +
param store_upload_revision:
 The revision assigned by the store.
param user:The IPerson requesting this information.
return:An 'ISnapBuild' or None.
+ +
+ + + + + +Store revision + + + + + + + + + +
+ + +

Return a dictionary containing a summary of build information.

+ +++ + + + + + + + + + + + +
param request_ids:
 A list of snap build request IDs.
param build_ids:
 A list of snap build IDs.
param user:The IPerson requesting this information.
return:A dict of {"requests", "builds"}, consisting of the overall +status summaries for the given snap build requests and snap +builds respectively.
+ +
+ + + + + +A list of snap build request IDs. + + + + + +A list of snap build IDs. + + + + + + +
+ + +Create a new webhook. + + + + + + +Delivery URL + + + + + +

Active

+

Deliver details of subscribed events.

+ +
+ +
+ + +Event types + + + + + +

Secret

+

An optional string used to sign delivery bodies with HMAC-SHA1 in the X-Hub-Signature header. This must be less than 200 bytes long.

+ +
+ +
+
+
+ + + + + + +
+ + +

Create and return automatic builds for this snap package.

+

This webservice API method is deprecated. It is normally better to +use the requestBuilds method instead, which can make dispatching +decisions based on the contents of snapcraft.yaml.

+ +++ + + + + + + + + + + + + + + + + + +
param allow_failures:
 If True, log exceptions other than "already +pending" from individual build requests; if False, raise them to +the caller.
param fetch_snapcraft_yaml:
 If True, fetch snapcraft.yaml from the +appropriate branch or repository and use it to decide which +builds to request; if False, fall back to building for all +supported architectures.
param logger:An optional logger.
raises CannotRequestAutoBuilds:
 if no auto_build_archive or +auto_build_pocket is set.
raises IncompatibleArguments:
 if no distro_series is set.
return:A sequence of ISnapBuild instances.
+ +
+ + + + + + + + + +
+ + +

Begin authorizing uploads of this snap package to the store.

+

This is intended for use by third-party sites integrating with +Launchpad. Most users should visit <snap URL>/+authorize instead.

+ +++ + + + + + + + + + + + + + + + +
param success_url:
 The URL to redirect to when authorization is +complete. If None (only allowed for internal use), defaults to +the canonical URL of the snap.
raises CannotAuthorizeStoreUploads:
 if the snap package is not +properly configured for store uploads.
raises BadRequestPackageUploadResponse:
 if the store returns an +error or a response without a macaroon when asked to issue a +package_upload macaroon.
raises SnapAuthorizationBadGeneratedMacaroon:
 if the package_upload +macaroon returned by the store has unsuitable SSO caveats.
return:The SSO caveat ID from the package_upload macaroon returned +by the store. The third-party site should acquire a discharge +macaroon for this caveat using OpenID and then call +completeAuthorization.
+ +
+ + + + + + +
+ + +

Complete authorizing uploads of this snap package to the store.

+

This is intended for use by third-party sites integrating with +Launchpad.

+ +++ + + + + + + + + + + +
param root_macaroon:
 A serialized root macaroon returned by the +store. Only required if not already set by beginAuthorization.
param discharge_macaroon:
 The serialized discharge macaroon +returned by SSO via OpenID. Only required if the root macaroon +has a third-party caveat addressed to SSO.
raises CannotAuthorizeStoreUploads:
 if the snap package is not +properly configured for store uploads.
+ +
+ + + + + +

Serialized root macaroon

+

Only required if not already set by beginAuthorization.

+ +
+ +
+ + +

Serialized discharge macaroon

+

Only required if root macaroon has SSO third-party caveat.

+ +
+ +
+
+
+ +
+ + +Set the architectures for which the snap package should be built. + + + + + + + + + + + + + + +

Request that the snap package be built.

+ +++ + + + + + + + + + + + + + + + + + + + + + + + + +
param requester:
 The person requesting the build.
param archive:The IArchive to associate the build with.
param distro_arch_series:
 The architecture to build for.
param pocket:The pocket that should be targeted.
param snap_base:
 The ISnapBase to use for this build.
param channels:A dictionary mapping snap names to channels to use +for this build.
param build_request:
 The ISnapBuildRequest job being processed, +if any.
param target_architectures:
 The optional list of target architectures +to build the snap for.
return:ISnapBuild.
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + +

Source snap channels to use for this build.

+

A dictionary mapping snap names to channels to use for this build. +Supported snap names: 'core', 'core18', 'core20', 'core22', 'core24', 'snapcraft', 'snapd'

+ +
+ +
+
+
+ + + + + + +
+ + +

Request that the snap package be built for relevant architectures.

+

This is an asynchronous operation; once the operation has finished, +the resulting build request's C{status} will be "Completed" and its +C{builds} collection will return the resulting builds.

+ +++ + + + + + + + + + + + + +
param requester:
 The person requesting the builds.
param archive:The IArchive to associate the builds with.
param pocket:The pocket that should be targeted.
param channels:A dictionary mapping snap names to channels to use +for these builds.
return:An ISnapBuildRequest.
+ +
+ + + + + + + + + + + + + + + + + + +

Source snap channels to use for this build.

+

A dictionary mapping snap names to channels to use for this build. +Supported snap names: 'core', 'core18', 'core20', 'core22', 'core24', 'snapcraft', 'snapd'

+ +
+ +
+
+
+ + + + + + +
+
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +

Allow external network access

+

Allow access to external network resources via a proxy. Resources hosted on Launchpad itself are always allowed.

+ +
+ +
+ + +

Automatically build when branch changes

+

Whether this snap package is built automatically when the branch containing its snap/snapcraft.yaml, build-aux/snap/snapcraft.yaml, snapcraft.yaml, or .snapcraft.yaml recipe changes.

+ +
+ +
+ + +

Source archive for automatic builds

+

The archive from which automatic builds of this snap package should be built.

+ +
+ +
+ + +

Source snap channels for automatic builds

+

A dictionary mapping snap names to channels to use when building this snap package. +Supported snap names: 'core', 'core18', 'core20', 'core22', 'core24', 'snapcraft', 'snapd'

+ +
+ +
+ + +

Pocket for automatic builds

+

The package stream within the source archive and distribution series to use when building the snap package. If the source archive is a PPA, then the PPA's archive dependencies will be used to select the pocket in the distribution's primary archive.

+ +
+ + + + + + +
+ + +

Bazaar branch

+

A Bazaar branch containing a snap/snapcraft.yaml, build-aux/snap/snapcraft.yaml, snapcraft.yaml, or .snapcraft.yaml recipe at the top level.

+ +
+ +
+ + +

Build source tarball

+

Whether builds of this snap package should also build a tarball containing all source code, including external dependencies.

+ +
+ +
+ + +

All builds of this snap package.

+

All builds of this snap package, sorted in descending order of finishing (or starting if not completed successfully).

+ +
+ +
+ + +

Can upload to store

+

Whether everything is set up to allow uploading builds of this snap package to the store.

+ +
+ +
+ + +

Completed builds of this snap package.

+

Completed builds of this snap package, sorted in descending order of finishing.

+ +
+ +
+ + +Date created + + + + + +Date last modified + + + + + +

Description

+

A description of the snap package.

+ +
+ +
+ + +

Distro Series

+

The series for which the snap package should be built. If not set, Launchpad will infer an appropriate series from snapcraft.yaml.

+ +
+ +
+ + +Failed build requests for this snap package. + + + + + +

Git branch path

+

The path of the Git branch containing a snap/snapcraft.yaml, build-aux/snap/snapcraft.yaml, snapcraft.yaml, or .snapcraft.yaml recipe at the top level.

+ +
+ +
+ + +

Git branch

+

The Git branch containing a snap/snapcraft.yaml, build-aux/snap/snapcraft.yaml, snapcraft.yaml, or .snapcraft.yaml recipe at the top level.

+ +
+ +
+ + +

Git repository

+

A Git repository with a branch containing a snap/snapcraft.yaml, build-aux/snap/snapcraft.yaml, snapcraft.yaml, or .snapcraft.yaml recipe at the top level.

+ +
+ +
+ + +

Git repository URL

+

The URL of a Git repository with a branch containing a snap/snapcraft.yaml, build-aux/snap/snapcraft.yaml, snapcraft.yaml, or .snapcraft.yaml recipe at the top level.

+ +
+ +
+ + +

Information type

+

The type of information contained in this Snap recipe.

+ +
+ + + + + + + +
+ + +Snap package is stale and is due to be rebuilt. + + + + + +

Snap recipe name

+

The name of the snap build recipe.

+ +
+ +
+ + +

Owner

+

The owner of this snap package.

+ +
+ +
+ + +Pending build requests for this snap package. + + + + + +

Pending builds of this snap package.

+

Pending builds of this snap package, sorted in descending order of creation.

+ +
+ +
+ + +

Private

+

Whether or not this snap is private.

+ +
+ +
+ + +

Enable Ubuntu Pro

+

Allow building this snap recipe using dependencies from Ubuntu Pro, if configured for the corresponding snap base.

+ +
+ +
+ + +

Processors

+

The architectures for which the snap package should be built.

+ +
+ +
+ + +

Registrant

+

The person who registered this snap package.

+ +
+ +
+ + +

Require virtualized builders

+

Only build this snap package on virtual builders.

+ +
+ +
+ + +

Store channels

+

Channels to release this snap package to after uploading it to the store. A channel is defined by a combination of an optional track, a risk, and an optional branch, e.g. '2.1/stable/fix-123', '2.1/stable', 'stable/fix-123', or 'stable'.

+ +
+ +
+ + +

Registered store package name

+

The registered name of this snap package in the store.

+ +
+ +
+ + +

Store series

+

The series in which this snap package should be published in the store.

+ +
+ +
+ + +

Automatically upload to store

+

Whether builds of this snap package are automatically uploaded to the store.

+ +
+ +
+ + +Webhooks for this target. + + + +
+ + + + +

Allow external network access

+

Allow access to external network resources via a proxy. Resources hosted on Launchpad itself are always allowed.

+ +
+ +
+ + +

Automatically build when branch changes

+

Whether this snap package is built automatically when the branch containing its snap/snapcraft.yaml, build-aux/snap/snapcraft.yaml, snapcraft.yaml, or .snapcraft.yaml recipe changes.

+ +
+ +
+ + +

Source archive for automatic builds

+

The archive from which automatic builds of this snap package should be built.

+ +
+ +
+ + +

Source snap channels for automatic builds

+

A dictionary mapping snap names to channels to use when building this snap package. +Supported snap names: 'core', 'core18', 'core20', 'core22', 'core24', 'snapcraft', 'snapd'

+ +
+ +
+ + +

Pocket for automatic builds

+

The package stream within the source archive and distribution series to use when building the snap package. If the source archive is a PPA, then the PPA's archive dependencies will be used to select the pocket in the distribution's primary archive.

+ +
+ + + + + + +
+ + +

Bazaar branch

+

A Bazaar branch containing a snap/snapcraft.yaml, build-aux/snap/snapcraft.yaml, snapcraft.yaml, or .snapcraft.yaml recipe at the top level.

+ +
+ +
+ + +

Build source tarball

+

Whether builds of this snap package should also build a tarball containing all source code, including external dependencies.

+ +
+ +
+ + +

Description

+

A description of the snap package.

+ +
+ +
+ + +

Distro Series

+

The series for which the snap package should be built. If not set, Launchpad will infer an appropriate series from snapcraft.yaml.

+ +
+ +
+ + +

Git branch path

+

The path of the Git branch containing a snap/snapcraft.yaml, build-aux/snap/snapcraft.yaml, snapcraft.yaml, or .snapcraft.yaml recipe at the top level.

+ +
+ +
+ + +

Git branch

+

The Git branch containing a snap/snapcraft.yaml, build-aux/snap/snapcraft.yaml, snapcraft.yaml, or .snapcraft.yaml recipe at the top level.

+ +
+ +
+ + +

Information type

+

The type of information contained in this Snap recipe.

+ +
+ + + + + + + +
+ + +

Snap recipe name

+

The name of the snap build recipe.

+ +
+ +
+ + +

Owner

+

The owner of this snap package.

+ +
+ +
+ + +

Private

+

Whether or not this snap is private.

+ +
+ +
+ + +

Enable Ubuntu Pro

+

Allow building this snap recipe using dependencies from Ubuntu Pro, if configured for the corresponding snap base.

+ +
+ +
+ + +

Require virtualized builders

+

Only build this snap package on virtual builders.

+ +
+ +
+ + +

Store channels

+

Channels to release this snap package to after uploading it to the store. A channel is defined by a combination of an optional track, a risk, and an optional branch, e.g. '2.1/stable/fix-123', '2.1/stable', 'stable/fix-123', or 'stable'.

+ +
+ +
+ + +

Registered store package name

+

The registered name of this snap package in the store.

+ +
+ +
+ + +

Store series

+

The series in which this snap package should be published in the store.

+ +
+ +
+ + +

Automatically upload to store

+

Whether builds of this snap package are automatically uploaded to the store.

+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +A series for snap packages in the store. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +

Can infer distro series?

+

True if inferring a distro series from snapcraft.yaml is supported for this snappy series.

+ +
+ +
+ + +Date created + + + + + +Display name + + + + + +Name + + + + + +Preferred distro series + + + + + +

Registrant

+

The person who registered this snappy series.

+ +
+ +
+ + +Status + + + + + + + + + + + + +

Usable distro series

+

The distro series that can be used for this snappy series.

+ +
+ +
+
+ + + + +

Can infer distro series?

+

True if inferring a distro series from snapcraft.yaml is supported for this snappy series.

+ +
+ +
+ + +Display name + + + + + +Name + + + + + +Preferred distro series + + + + + +Status + + + + + + + + + + + + +

Usable distro series

+

The distro series that can be used for this snappy series.

+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Social Account + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +

Identity

+

A dictionary with the identity attributes and values for the social account. The format is specific for each platform. Matrix account attributes: username, homeserver

+ +
+ +
+ + +Owner + + + + + +Social Platform Type + + + + +
+ + + + +

Identity

+

A dictionary with the identity attributes and values for the social account. The format is specific for each platform. Matrix account attributes: username, homeserver

+ +
+ +
+ + +Social Platform Type + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +A source package associated to a particular distribution series. + + + + + + + + + + + + + + + + + + + + + + + + + +

Return entries in the translation import queue for this entity.

+ +++ + + + + + + + +
arg import_status:
 RosettaImportStatus DB Schema entry.
arg file_extension:
 String with the file type extension, usually 'po' +or 'pot'.
+

If one of both of 'import_status' or 'file_extension' are given, the +returned entries are filtered based on those values.

+ +
+ + + + + +

Status

+

Show only entries with this status

+ +
+ + + + + + + + +
+ + +

Filename extension

+

Show only entries with this filename suffix

+ +
+ +
+ +
+ + + + +
+ + +

Search the IBugTasks reported on this entity.

+ +++ + + + +
search_params:a BugTaskSearchParams object
+

Return an iterable of matching results.

+

Note: milestone is currently ignored for all IBugTargets +except IProduct.

+ +
+ + + + + +List of fields by which the results are ordered. + + + + + +Bug ID or search text. + + + + + +

Status

+

Show only bugs with the given status value or list of values.

+ +
+ +
+ + +

Importance

+

Show only bugs with the given importance or list of importances.

+ +
+ +
+ + +

Information Type

+

Show only bugs with the given information type or list of information types.

+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Show only bugs with patches available. + + + + + +Show only bugs associated with a CVE + + + + + +

Tags

+

String or list of strings for tags to search. To exclude, prepend a '-', e.g. '-unwantedtag'

+ +
+ +
+ + +

Tags combination

+

Search for any or all of the tags specified.

+ +
+ + + +
+ + +Omit bugs marked as duplicate, + + + + + +

Status upstream

+

Indicates the status of any remote watches associated with the bug. Possible values include: pending_bugwatch, hide_upstream, resolved_upstream, and open_upstream.

+ +
+ +
+ + +

Milestone

+

Show only bug tasks targeted to this milestone.

+ +
+ +
+ + +

Component

+

Distribution package archive grouping. E.g. main, universe, multiverse

+ +
+ +
+ + + + + + +Exclude bugs with packages specified + + + + + +Search for bugs that are linked to branches or for bugs that are not linked to branches. + + + + + + + + +Search for bugs that have been modified since the given date. + + + + + +Search for bugs that have been created since the given date. + + + + + +Search for bugs that were created before the given date. + + + + + +Omit bugs targeted to a series + + + + + +Search for bugs that are linked to blueprints or for bugs that are not linked to blueprints. + + + + + + + +
+ + + + +
+ + +

Return an iterator over all its translation templates.

+

The returned templates are either obsolete or current.

+ +++ + + + +
return:A sequence of IPOTemplate.
+ +
+ + + + + + + + + +
+ + +

Returns all merge proposals of a given status.

+ +++ + + + + + + + + + + + +
param status:A list of statuses to filter with.
param visible_by_user:
 Normally the user who is asking.
param eager_load:
 If True, load related objects for the whole +collection.
returns:A list of IBranchMergeProposal.
+ +
+ + + + + +A list of merge proposal statuses to filter by. + + + + + + + + + +
+ + +

Returns all branches with the given lifecycle status.

+ +++ + + + + + + + + + + + + + + +
param status:A list of statuses to filter with.
param visible_by_user:
 Normally the user who is asking.
param modified_since:
 If set, filters the branches being returned +to those that have been modified since the specified date/time.
param eager_load:
 If True load related objects for the whole +collection.
returns:A list of IBranch.
+ +
+ + + + + +A list of branch lifecycle statuses to filter by. + + + + + +Limit the branches to those modified since this date. + + + + + + + + + +
+ + +

Get the official branch for this package in the given pocket.

+ +++ + + + + + +
param pocket:A PackagePublishingPocket.
return:An IBranch.
+ +
+ + + + + +Pocket + + + + + + + + + + + + + + +
+ + +

Get the official branches for this package.

+

This operation returns a {Pocket-name : IBranch} dict.

+ +++ + + + +
return:A {Pocket-name : IBranch} dict.
+ +
+ + + + + + +
+ + +

Set the official branch for the given pocket of this package.

+ +++ + + + + + + + + + + +
param pocket:A PackagePublishingPocket.
param branch:The branch to set as the official branch.
param registrant:
 The individual who created this link.
return:None
+ +
+ + + + + +Pocket + + + + + + + + + + +Branch + + + + + + +
+ + +

Create a new code import.

+ +++ + + + + + + + + + + + + + + + + + + + + + + + +
param registrant:
 The IPerson to record as the registrant of the +import.
param branch_name:
 The name of the branch or repository to create.
param rcs_type:The type of the foreign VCS.
param target_rcs_type:
 The type of the branch or repository to +create (Bazaar or Git).
param url:The URL to import from if the VCS type uses a single URL +(i.e. isn't CVS).
param cvs_root:The CVSROOT for a CVS import.
param cvs_module:
 The module to import for a CVS import.
param owner:Who should own the created branch or repository, or +None for it to be the same as the registrant, or the caller over +the API.
returns:An instance of ICodeImport.
+ +
+ + + + + +Name of branch to create + + + + + + + + + + + + + + + + + + + + + +Foreign VCS URL + + + + + +CVS root URL + + + + + +CVS module to import + + + + + +Owner of the resulting branch + + + + + + + + + + + +
+ + +Update the existing packaging record, or create a new packaging +record, that links the source package to the given productseries, +and record that it was done by the owner. + + + + + + + + + + + + + + +Delete the packaging for this sourcepackage. + + + + + + + + +
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +

After reporting a bug, I can expect the following.

+

This message of acknowledgement will be displayed to anyone after reporting a bug.

+ +
+ +
+ + +

Helpful guidelines for reporting a bug

+

These guidelines will be shown to everyone reporting a bug and should be text or a bulleted list with your particular requirements, if any.

+ +
+ +
+ + +

Display name

+

A displayname, constructed, for this package

+ +
+ +
+ + +

Distribution

+

The distribution for this source package.

+ +
+ +
+ + +

Distribution Series

+

The DistroSeries for this SourcePackage

+ +
+ +
+ + +The name of the component in which the package was last published. + + + + + +

Name

+

The text name of this source package.

+ +
+ +
+ + +

Official Bug Tags

+

The list of bug tags defined as official.

+ +
+ +
+ + +

Project series

+

The registered project series that this source package is based on. This series may be the same as the one that earlier versions of this source packages were based on.

+ +
+ +
+
+ + + + +

After reporting a bug, I can expect the following.

+

This message of acknowledgement will be displayed to anyone after reporting a bug.

+ +
+ +
+ + +

Helpful guidelines for reporting a bug

+

These guidelines will be shown to everyone reporting a bug and should be text or a bulleted list with your particular requirements, if any.

+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +A source package publishing history record. + + + + + + + + + + + + + + + + + + + + + + + + + +

Return all resulted IBinaryPackagePublishingHistory.

+

Follow the build record and return every binary publishing record +for any DistroArchSeries in this DistroSeries and in the same +IArchive and Pocket, ordered by architecture tag. If +active_binaries_only is True (the default), then only return +PUBLISHED or PENDING binary publishing records.

+ +++ + + + + + + +
param active_binaries_only:
 If True, only return PUBLISHED or +PENDING publishing records.
return:a list with all corresponding publishing records.
+ +
+ + + + + +Only return active publications + + + + + + + + + +
+ + +

Return a list of IBuild objects in this publishing context.

+

The builds are ordered by DistroArchSeries.architecturetag.

+ +++ + + + +
return:a list of IBuilds.
+ +
+ + + + + + + + + +
+ + +

The .changes file URL for this source publication.

+ +++ + + + +
return:the .changes file URL for this source (a string).
+ +
+ + + + + + +
+ + +

URLs for this source publication's uploaded source files.

+ +++ + + + + + + +
param include_meta:
 Return a list of dicts with keys url, size, and +sha256 for each URL instead of a simple list.
return:A collection of URLs for this source.
+ +
+ + + + + +Include Metadata + + + + + + +
+ + +

URLs for this source publication's binary files.

+ +++ + + + +
return:A collection of URLs for this source.
+ +
+ + + + + + +
+ + +

URL of the debdiff file between this and the supplied version.

+ +++ + + + + + + +
param to_version:
 The version of the source package for which you +want to get the diff to.
return:A URL to the librarian file containing the diff.
+ +
+ + + + + +To Version + + + + + + +
+ + +Return whether or not a given source files has restricted files. + + + + + + + + + + +

The URL for this source package release's changelog.

+ +++ + + + +
return:the changelog file URL for this source (a string).
+ +
+ + + + + + +
+ + +

Delete this source and its binaries.

+ +++ + + + + + + + +
param removed_by:
 IPerson responsible for the removal.
param removal_comment:
 optional text describing the removal reason.
+ +
+ + + + + +Removal comment + + + + + + +
+ + +

Change the component and/or section of this publication.

+

It is changed only if the argument is not None.

+

Return the overridden publishing record, a +ISourcePackagePublishingHistory.

+ +
+ + + + + +The new component name. + + + + + +The new section name. + + + + + + + + + +
+
+ + + + + The canonical link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +Archive ID + + + + + +Component Name + + + + + +Original archive ID where this package was copied from. + + + + + +

Publication Creator

+

The IPerson who created this publication.

+ +
+ +
+ + +The date on which this record was created + + + + + +The date on which this record was set as pending removal + + + + + +The date on which this record was published + + + + + +The date on which this record was removed from the published set + + + + + +The date on which this record was marked superseded + + + + + +

Display Name

+

Text representation of the current record.

+ +
+ +
+ + +The distro series being published into + + + + + +

Package Creator

+

The IPerson who created the source package.

+ +
+ +
+ + +

Package Maintainer

+

The IPerson who maintains the source package.

+ +
+ +
+ + +

Package Signer

+

The IPerson who signed the source package.

+ +
+ +
+ + +

Package upload

+

The Package Upload that caused the creation of this publication.

+ +
+ +
+ + +

Pocket

+

The pocket into which this entry is published

+ +
+ + + + + + +
+ + +Reason why this publication is going to be removed. + + + + + +The IPerson responsible for the removal + + + + + +The date on which this record is scheduled for deletion + + + + + +Section Name + + + + + +Source Package Name + + + + + +Source Package Version + + + + + +

Publication sponsor

+

The IPerson who sponsored the creation of this publication.

+ +
+ +
+ + +

Package Publishing Status

+

The status of this publishing record

+ +
+ + + + + + +
+
+ + + + +The date on which this record was created + + + + + +The date on which this record was set as pending removal + + + + + +The date on which this record was published + + + + + +The date on which this record was removed from the published set + + + + + +The date on which this record was marked superseded + + + + + +

Display Name

+

Text representation of the current record.

+ +
+ +
+ + +The distro series being published into + + + + + +Reason why this publication is going to be removed. + + + + + +The IPerson responsible for the removal + + + + + +The date on which this record is scheduled for deletion + + + + + +

Package Publishing Status

+

The status of this publishing record

+ +
+ + + + + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +A build of a source package. + + + + + + + + + + + + + + + + + + + + + + + + + +Change the build's score. + + + + + + +Score + + + + + + + + + +

Restore the build record to its initial state.

+

Build record loses its history, is moved to NEEDSBUILD and a new +non-scored BuildQueue entry is created for it.

+ +
+ + + + + + +
+ + +

Cancel the build if it is either pending or in progress.

+

Check the can_be_cancelled property prior to calling this method to +find out if cancelling the build is possible.

+

If the build is in progress, it is marked as CANCELLING until the +buildd manager terminates the build and marks it CANCELLED. If the +build is not in progress, it is marked CANCELLED immediately and is +removed from the build queue.

+

If the build is not in a cancellable state, this method is a no-op.

+ +
+ + + + + + +
+
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +

Archive

+

The Archive context for this build.

+ +
+ +
+ + +

Build Log URL

+

A URL for the build log. None if there is no log available.

+ +
+ +
+ + +

Builder

+

The builder assigned to this job.

+ +
+ +
+ + +

Status

+

The current status of the job.

+ +
+ + + + + + + + + + + + + +
+ + +

Can be cancelled

+

Whether this build record can be cancelled.

+ +
+ +
+ + +

Can be rescored

+

Whether this build record can be rescored manually.

+ +
+ +
+ + +

Can be retried

+

Whether this build record can be retried.

+ +
+ +
+ + +

Date finished

+

The actual build start time. Set when the build is dispatched the first time and not changed in subsequent build attempts.

+ +
+ +
+ + +

Date started

+

The timestamp when the build farm job was started.

+ +
+ +
+ + +

Date finished

+

The timestamp when the build farm job was finished.

+ +
+ +
+ + +

Date created

+

The timestamp when the build farm job was created.

+ +
+ +
+ + +

Dependencies

+

Debian-like dependency line that must be satisfied before attempting to build this request.

+ +
+ +
+ + +

Distribution

+

Shortcut for its distribution.

+ +
+ +
+ + +

Distribution series

+

Shortcut for its distribution series.

+ +
+ +
+ + +

Duration

+

Duration interval, calculated when the result gets collected.

+ +
+ +
+ + +

Pocket

+

The build targeted pocket.

+ +
+ + + + + + +
+ + +Title + + + + + +

Upload Log URL

+

A URL for failed upload logs.Will be None if there was no failure.

+ +
+ +
+
+ + + + +

Build Log URL

+

A URL for the build log. None if there is no log available.

+ +
+ +
+ + +

Status

+

The current status of the job.

+ +
+ + + + + + + + + + + + + +
+ + +

Dependencies

+

Debian-like dependency line that must be satisfied before attempting to build this request.

+ +
+ +
+ + +

Distribution

+

Shortcut for its distribution.

+ +
+ +
+ + +

Distribution series

+

Shortcut for its distribution series.

+ +
+ +
+ + +

Pocket

+

The build targeted pocket.

+ +
+ + + + + + +
+ + +Title + + + + + +

Upload Log URL

+

A URL for failed upload logs.Will be None if there was no failure.

+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

An ISourcePackageRecipe describes how to build a source package.

+

More precisely, it describes how to combine a number of branches into a +debianized source tree.

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + +

Find distroseries and archive data for pending builds.

+

Return a list of dict( +distroseries:distroseries.displayname +archive:archive.token) +The archive reference is as defined by the archive vocab. +This information is used to construct the request builds popup form.

+ +
+ + + + + + +
+ + +

Request that the recipe be built in to the specified archive.

+ +++ + + + + + + + + + + +
param archive:The IArchive which you want the build to end up in.
param requester:
 the person requesting the build.
param pocket:the pocket that should be targeted.
raises:various specific upload errors if the requestor is not +able to upload to the archive.
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +Perform a build into the daily build archive. + + + + + + + + +
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +The base branch used by this recipe. + + + + + +The base Git repository used by this recipe. + + + + + +

Built daily

+

Automatically build each day, if the source has changed.

+ +
+ +
+ + +

All builds of this recipe.

+

All builds of this recipe, sorted in descending order of finishing (or starting if notcompleted successfully).

+ +
+ +
+ + +

The completed builds of this recipe.

+

Completed builds of this recipe, sorted in descending order of finishing (or starting if notcompleted successfully).

+ +
+ +
+ + +The archive to use for daily builds. + + + + + + + + + +

deb-version template

+

The template that will be used to generate a deb version.

+ +
+ +
+ + +

Description

+

A short description of the recipe.

+ +
+ +
+ + +

Default distribution series

+

If built daily, these are the distribution versions that the recipe will be built for.

+ +
+ +
+ + +Recipe is stale. + + + + + +The the most recent build of this recipe. + + + + + +

Name

+

The name of the recipe is part of the URL and needs to be unique for the given owner.

+ +
+ +
+ + +

Owner

+

The person or team who can edit this recipe.

+ +
+ +
+ + +

The pending builds of this recipe.

+

Pending builds of this recipe, sorted in descending order of creation.

+ +
+ +
+ + + + + + +The person who created this recipe. + + + +
+ + + + +

Built daily

+

Automatically build each day, if the source has changed.

+ +
+ +
+ + +The archive to use for daily builds. + + + + + +

Description

+

A short description of the recipe.

+ +
+ +
+ + +

Default distribution series

+

If built daily, these are the distribution versions that the recipe will be built for.

+ +
+ +
+ + +

Name

+

The name of the recipe is part of the URL and needs to be unique for the given owner.

+ +
+ +
+ + +

Owner

+

The person or team who can edit this recipe.

+ +
+ +
+ + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +A branch linked to a specification. + + + + + + + + + + + + + + + + + + + + + + + + + +Destroy this specification branch link + + + + + + + + + + + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +Branch + + + + + +The person who linked the bug to the branch + + + + + +Blueprint + + + + + + + + +Branch + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +A Specification. + + + + + + + + + + + + + + + + + + + + + + + + + +

Associate a branch with this bug.

+ +++ + + + + + + +
param branch:The branch being linked to.
param registrant:
 The user linking the branch.
+ +
+ + + + + + + + + + +
+ + +

Unlink a branch from this bug.

+ +++ + + + + + +
param branch:The branch being unlinked from.
param user:The user unlinking the branch.
+ +
+ + + + + + + + + + +
+ + +

Link a bug to this specification.

+ +++ + + + +
param bug:IBug to link.
+ +
+ + + + + + + + + + +
+ + +

Unlink a bug to this specification.

+ +++ + + + +
param bug:IBug to unlink.
+ +
+ + + + + + + + + + +
+ + +Mark the spec as being accepted for its current series goal. + + + + + + + + + + +Mark the spec as being declined as a goal for the proposed +series. + + + + + + + + + + +Propose this spec for a series or distroseries. + + + + + + +Target + + + + + + + + + +Subscribe this person to the feature specification. + + + + + + +Person + + + + + +

Participation essential

+

Check this if participation in the design of the feature is essential.

+ +
+ +
+
+
+ +
+ + +Remove the person's subscription to this spec. + + + + + + +Person + + + + + + + +
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +

Approver

+

The person responsible for approving the specification, and for reviewing the code when it's ready to be landed.

+ +
+ +
+ + +

Assignee

+

The person responsible for implementing the feature.

+ +
+ +
+ + +Bugs related to this object. + + + + + +

Starter

+

The person who finally set the state of the spec to the values that we consider mark it as complete.

+ +
+ +
+ + +

Date Completed

+

The date when this spec was marked complete. Note that complete also includes "obsolete" and superseded. Essentially, it is the state where no more work will be done on the feature.

+ +
+ +
+ + +Date Created + + + + + +

Date Started

+

The date when this spec was marked started.

+ +
+ +
+ + +

Definition Status

+

The current status of the process to define the feature and get approval for the implementation plan.

+ +
+ + + + + + + + + +
+ + +Specs on which this one depends. + + + + + +

Basic direction approved?

+

Check this to indicate that the drafter and assignee have satisfied the approver that they are headed in the right basic direction with this specification.

+ +
+ +
+ + +

Drafter

+

The person responsible for drafting the specification.

+ +
+ +
+ + +

Series goal is accepted

+

Is true if this specification has been proposed as a goal for a specific series, and the drivers of that series have accepted the goal.

+ +
+ +
+ + +

Implementation Status

+

The state of progress being made on the actual implementation or delivery of this feature.

+ +
+ + + + + + + + + + + + + + +
+ + +

Information Type

+

The type of information contained in this specification.

+ +
+ + + + + + + +
+ + +

Is started

+

Is True if this spec is already completely implemented. Note that it is True for informational specs, since they describe general functionality rather than specific code to be written. It is also true of obsolete and superseded specs, since there is no longer any need to schedule work for them.

+ +
+ +
+ + +

Is started

+

Is True if the spec is in a state which we consider to be "started". This looks at the delivery attribute, and also considers informational specs to be started when they are approved.

+ +
+ +
+ + +Lifecycle Status + + + + + + + + +Branches associated with this spec, usually branches on which this spec is being implemented. + + + + + +

Milestone

+

The milestone in which we would like this feature to be delivered.

+ +
+ +
+ + +

Name

+

May contain lower-case letters, numbers, and dashes. It will be used in the specification url. Examples: mozilla-type-ahead-find, postgres-smart-serial.

+ +
+ +
+ + +Owner + + + + + +Priority + + + + + + + + + + + +

Specification URL

+

The URL of the specification. This is usually a wiki page.

+ +
+ +
+ + +

Starter

+

The person who first set the state of the spec to the values that we consider mark it as started.

+ +
+ +
+ + +

Summary

+

A single-paragraph description of the feature. This will also be displayed in most feature listings.

+ +
+ +
+ + +

For

+

The project for which this proposal is being made.

+ +
+ +
+ + +

Title

+

Describe the feature as clearly as possible in up to 70 characters. This title is displayed in every feature list or report.

+ +
+ +
+ + +

Status Whiteboard

+

Any notes on the status of this spec you would like to make. Your changes will override the current text.

+ +
+ +
+ + +

Work Items

+

Work items for this specification input in a text format. Your changes will override the current work items.

+ +
+ +
+
+ + + + +

Approver

+

The person responsible for approving the specification, and for reviewing the code when it's ready to be landed.

+ +
+ +
+ + +

Assignee

+

The person responsible for implementing the feature.

+ +
+ +
+ + +

Definition Status

+

The current status of the process to define the feature and get approval for the implementation plan.

+ +
+ + + + + + + + + +
+ + +

Basic direction approved?

+

Check this to indicate that the drafter and assignee have satisfied the approver that they are headed in the right basic direction with this specification.

+ +
+ +
+ + +

Drafter

+

The person responsible for drafting the specification.

+ +
+ +
+ + +

Implementation Status

+

The state of progress being made on the actual implementation or delivery of this feature.

+ +
+ + + + + + + + + + + + + + +
+ + +

Information Type

+

The type of information contained in this specification.

+ +
+ + + + + + + +
+ + +

Milestone

+

The milestone in which we would like this feature to be delivered.

+ +
+ +
+ + +

Name

+

May contain lower-case letters, numbers, and dashes. It will be used in the specification url. Examples: mozilla-type-ahead-find, postgres-smart-serial.

+ +
+ +
+ + +Priority + + + + + + + + + + + +

Specification URL

+

The URL of the specification. This is usually a wiki page.

+ +
+ +
+ + +

Summary

+

A single-paragraph description of the feature. This will also be displayed in most feature listings.

+ +
+ +
+ + +

For

+

The project for which this proposal is being made.

+ +
+ +
+ + +

Title

+

Describe the feature as clearly as possible in up to 70 characters. This title is displayed in every feature list or report.

+ +
+ +
+ + +

Status Whiteboard

+

Any notes on the status of this spec you would like to make. Your changes will override the current text.

+ +
+ +
+ + +

Work Items

+

Work items for this specification input in a text format. Your changes will override the current work items.

+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +A subscription for a person to a specification. + + + + + + + + + + + + + + + + + + + + + + + + + +Can the user unsubscribe the subscriber from the specification? + + + + + + + + + + + + + + The canonical link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +An interface for the objects which actually have unique +specifications directly attached to them. + + + + + + + + + + + + + + + + + + + + + + + + + +Returns the specification with the given name, for this target, +or None. + + + + + + +The name of the specification + + + + + + + + + + + + + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +

All specifications

+

A list of all specifications, regardless of status or approval or completion, for this object.

+ +
+ +
+ + +

Valid specifications

+

All specifications that are not obsolete. When called from an ISpecificationGoal it will also exclude the ones that have not been accepted for that goal

+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +A subscription to a Launchpad structure. + + + + + + + + + + + + + + + + + + + + + + + + + +Returns a new BugSubscriptionFilter for this subscription. + + + + + + + + + + + + + + + + + + + The canonical link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +List of bug filters that narrow this subscription. + + + + + +The date on which this subscription was created. + + + + + +The date on which this subscription was last updated. + + + + + +

Subscribed by

+

The person creating the subscription.

+ +
+ +
+ + +

Subscriber

+

The person subscribed.

+ +
+ +
+ + +The structure to which this subscription belongs. + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +A Launchpad Structure allowing users to subscribe to it. + + + + + + + + + + + + + + + + + + + + + + + + + +

Return all the subscriptions with the specified levels.

+ +++ + + + +
return:A sequence of IStructuralSubscription.
+ +
+ + + + + + + + + +
+ + +Return the subscription for person, if it exists. + + + + + + + + + + + + + + + + + +Is user subscribed, directly or via a team, to bug mail? + + + + + + + + + + +

Add a bug subscription for this structure.

+

This method is used to create a new IStructuralSubscription for the +target. This initially has a single filter which will allow all +notifications will be sent.

+ +++ + + + + + + + +
subscriber:The IPerson who will be subscribed. If omitted, +subscribed_by will be used.
subscribed_by:The IPerson creating the subscription.
return:The new bug subscription.
+ +
+ + + + + +Person to subscribe. If omitted, the requesting user will be subscribed. + + + + + + + + + + + +
+ + +

Add a bug subscription filter for this structure.

+

This method is used to create a new IBugSubscriptionFilter for the +target. It will initially allow all notifications to be sent.

+ +++ + + + + + + + +
subscriber:The IPerson who will be subscribed. If omitted, +subscribed_by will be used.
subscribed_by:The IPerson creating the subscription.
return:The new bug subscription filter.
+ +
+ + + + + +Person to subscribe. If omitted, the requesting user will be subscribed. + + + + + + + + + + + +
+ + +

Remove a subscription to bugs from this structure.

+

This will delete all associated filters.

+ +++ + + + + + + +
subscriber:The IPerson who will be unsubscribed. If omitted, +unsubscribed_by will be used.
unsubscribed_by:
 The IPerson removing the subscription.
+ +
+ + + + + +Person to unsubscribe. If omitted, the requesting user will be unsubscribed. + + + + + + +
+
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

A group of people and other teams.

+

Launchpadlib example of getting the date a user joined a team:

+
+def get_join_date(team, user):
+    team = launchpad.people[team]
+    members = team.members_details
+    for member in members:
+        if member.member.name == user:
+            return member.date_joined
+    return None
+
+

Implementation notes:

+
    +
  • ITeam extends IPerson.
  • +
  • The teamowner should never be None.
  • +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + +

Return entries in the translation import queue for this entity.

+ +++ + + + + + + + +
arg import_status:
 RosettaImportStatus DB Schema entry.
arg file_extension:
 String with the file type extension, usually 'po' +or 'pot'.
+

If one of both of 'import_status' or 'file_extension' are given, the +returned entries are filtered based on those values.

+ +
+ + + + + +

Status

+

Show only entries with this status

+ +
+ + + + + + + + +
+ + +

Filename extension

+

Show only entries with this filename suffix

+ +
+ +
+ +
+ + + + +
+ + +

Search the IBugTasks reported on this entity.

+ +++ + + + +
search_params:a BugTaskSearchParams object
+

Return an iterable of matching results.

+

Note: milestone is currently ignored for all IBugTargets +except IProduct.

+ +
+ + + + + +List of fields by which the results are ordered. + + + + + +Bug ID or search text. + + + + + +

Status

+

Show only bugs with the given status value or list of values.

+ +
+ +
+ + +

Importance

+

Show only bugs with the given importance or list of importances.

+ +
+ +
+ + +

Information Type

+

Show only bugs with the given information type or list of information types.

+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Show only bugs with patches available. + + + + + +Show only bugs associated with a CVE + + + + + +

Tags

+

String or list of strings for tags to search. To exclude, prepend a '-', e.g. '-unwantedtag'

+ +
+ +
+ + +

Tags combination

+

Search for any or all of the tags specified.

+ +
+ + + +
+ + +Omit bugs marked as duplicate, + + + + + +

Status upstream

+

Indicates the status of any remote watches associated with the bug. Possible values include: pending_bugwatch, hide_upstream, resolved_upstream, and open_upstream.

+ +
+ +
+ + +

Milestone

+

Show only bug tasks targeted to this milestone.

+ +
+ +
+ + +

Component

+

Distribution package archive grouping. E.g. main, universe, multiverse

+ +
+ +
+ + + + + + +Exclude bugs with packages specified + + + + + +Search for bugs that are linked to branches or for bugs that are not linked to branches. + + + + + + + + +Search for bugs that have been modified since the given date. + + + + + +Search for bugs that have been created since the given date. + + + + + +Search for bugs that were created before the given date. + + + + + +Omit bugs targeted to a series + + + + + +Search for bugs that are linked to blueprints or for bugs that are not linked to blueprints. + + + + + + + +
+ + + + +
+ + +

Returns merge proposals where a person was asked to review.

+

This does not include merge proposals that were requested from +teams that the person is part of. If status is not passed then +it will return proposals that are in the "Needs Review" state.

+ +++ + + + + + + + + +
param status:A list of statuses to filter with.
param visible_by_user:
 Normally the user who is asking.
returns:A list of IBranchMergeProposal.
+ +
+ + + + + +A list of merge proposal statuses to filter by. + + + + + + + + + +
+ + +

Returns all merge proposals of a given status.

+ +++ + + + + + + + + + + + +
param status:A list of statuses to filter with.
param visible_by_user:
 Normally the user who is asking.
param eager_load:
 If True, load related objects for the whole +collection.
returns:A list of IBranchMergeProposal.
+ +
+ + + + + +A list of merge proposal statuses to filter by. + + + + + + + + + +
+ + +

Returns all branches with the given lifecycle status.

+ +++ + + + + + + + + + + + + + + +
param status:A list of statuses to filter with.
param visible_by_user:
 Normally the user who is asking.
param modified_since:
 If set, filters the branches being returned +to those that have been modified since the specified date/time.
param eager_load:
 If True load related objects for the whole +collection.
returns:A list of IBranch.
+ +
+ + + + + +A list of branch lifecycle statuses to filter by. + + + + + +Limit the branches to those modified since this date. + + + + + + + + + +
+ + +Return Social Accounts associated to the user. + + + + + + +Social Platform Type + + + + + + + + + + +Return the person's recipe with the given name. + + + + + + + + + + + + + + + + + +

Return private archive URLs that this person can see.

+

For each of the private archives (PPAs) that this person can see, +return a URL that includes the HTTP basic auth data. The URL +returned is suitable for including in a sources.list file.

+ +
+ + + + + + +
+ + +

Return the packages for which this person is a bug subscriber.

+

Returns a list of IDistributionSourcePackage's, ordered alphabetically +(A to Z) by name.

+ +
+ + + + + + + + + +
+ + +

Return the people whose membership on this team match :status:.

+

If no orderby is provided, Person.sortingColumns is used.

+ +
+ + + + + +The state of this membership + + + + + + + + + + + + + + + + + +
+ + +

Return a PPA with the given name if it exists.

+ +++ + + + + + + + +
param name:A string with the exact name of the ppa being looked up.
raises:NoSuchPPA if a suitable PPA could not be found.
return:a PPA IArchive record corresponding to the name.
+ +
+ + + + + + + + + + + + + + + + + +
+ + +

Search the person's questions.

+ +++ + + + + + + + + + + + + + + + + +
param search_text:
 A string that is matched against the question +title and description. If None, the search_text is not included as +a filter criteria.
param status:A sequence of QuestionStatus Items. If None or an empty +sequence, the status is not included as a filter criteria. The +default is to match all status except Expired and Invalid.
param language:An ILanguage or a sequence of ILanguage objects to +match against the question's language. If None or an empty +sequence, the language is not included as a filter criteria.
param participation:
 A list of QuestionParticipation that defines the +set of relationship to questions that will be searched. If None or +an empty sequence, all relationships are considered.
param needs_attention:
 If this flag is true, only questions that +need attention the person will be included. These are the +questions in the NEEDSINFO or ANSWERED state owned by the person. +The questions not owned by the person but on which the person +requested more information or gave an answer and that are back in +the OPEN state are also included.
param sort:An attribute of QuestionSort. If None, a default value is +used. When there is a search_text value, the default is to sort by +RELEVANCY, otherwise results are sorted NEWEST_FIRST.
+ +
+ + + + + +Search text + + + + + +Status + + + + + +Language + + + + + +Participation + + + + + + + + + + +Needs attentions from + + + + + +Sort + + + + + + + + + + + + + + +
+ + +

Return a list of IQuestionTargets that a person is subscribed to.

+

This will return IQuestionTargets that the person is registered as an +answer contact because they subscribed themselves.

+ +
+ + + + + + + + + +
+ + +

Return a list of IQuestionTargets that are indirect subscriptions.

+

This will return IQuestionTargets that the person or team is +registered as an answer contact because of their membership in a team.

+ +
+ + + + + + + + + +
+ + +Return (private) archives subscription for this person. + + + + + + + + + + + + + +

Projects owned by this person or teams to which they belong.

+ +++ + + + + +
param match_name:
 string optional project name to screen the results.
+ +
+ + + + + + + + + +
+ + +

Return the teams that this person owns.

+

The iterator includes the teams that the user owns, but it not +a member of.

+ +
+ + + + + + + + + +
+ + +Specify the location and time zone of a person. + + + + + + +The latitude of this object. + + + + + +The longitude of this object. + + + + + +The time zone of this object. + + + + + + + + + +

Join the given team if its membership_policy is not RESTRICTED.

+

Join the given team according to the policies and defaults of that +team:

+
    +
  • If the team membership_policy is OPEN, the user is added as +an APPROVED member with a NULL TeamMembership.reviewer.
  • +
  • If the team membership_policy is MODERATED, the user is added as +a PROPOSED member and one of the team's administrators have to +approve the membership.
  • +
+

If may_subscribe_to_list is True, then also attempt to +subscribe to the team's mailing list, depending on the list +status and the person's auto-subscribe settings.

+ +++ + + + + + + + +
param requester:
 The person who requested the membership on +behalf of a team or None when a person requests the +membership for themselves.
param may_subscribe_to_list:
 If True, also try subscribing to +the team mailing list.
+ +
+ + + + + +Team + + + + + + +
+ + +

Leave the given team.

+

This is a convenience method for retractTeamMembership() that allows +a user to leave the given team, or to cancel a PENDING membership +request.

+ +++ + + + +
param team:The team to leave.
+ +
+ + + + + +Team + + + + + + +
+ + +

Add the given person as a member of this team.

+ +++ + + + + + + + + + + + + + + + + + +
param person:If the given person is already a member of this +team we'll simply change its membership status. Otherwise a new +TeamMembership is created with the given status.
param reviewer:The user who made the given person a member of this +team.
param comment:String that will be assigned to the +proponent_comment, reviewer_comment, or acknowledger comment.
param status:TeamMembershipStatus value must be either +Approved, Proposed or Admin. +If the new member is a team, the status will be changed to +Invited unless the user is also an admin of that team.
param force_team_add:
 If the person is actually a team and +force_team_add is False, the team will actually be invited to +join this one. Otherwise the team is added as if it were a +person.
param may_subscribe_to_list:
 If the person is not a team, and +may_subscribe_to_list is True, then the person may be subscribed +to the team's mailing list, depending on the list status and the +person's auto-subscribe settings.
return:A tuple containing a boolean indicating when the +membership status changed and the current TeamMembershipStatus. +This depends on the desired status passed as an argument, the +membership policy and the user's privileges.
+ +
+ + + + + +Member + + + + + +The state of this membership + + + + + + + + + + + + + + + + + + +
+ + +

Accept an invitation to become a member of the given team.

+

There must be a TeamMembership for this person and the given team with +the INVITED status. The status of this TeamMembership will be changed +to APPROVED.

+ +
+ + + + + +Team + + + + + + + + + + +
+ + +

Decline an invitation to become a member of the given team.

+

There must be a TeamMembership for this person and the given team with +the INVITED status. The status of this TeamMembership will be changed +to INVITATION_DECLINED.

+ +
+ + + + + +Team + + + + + + + + + + +
+ + +

Retract this team's membership in the given team.

+

If there's a membership entry for this team on the given team and +its status is either APPROVED, ADMIN, PENDING, or INVITED, the status +is changed and the relevant entries in TeamParticipation.

+

APPROVED and ADMIN status are changed to DEACTIVATED. +PENDING status is changed to DECLINED. +INVITED status is changes to INVITATION_DECLINED.

+ +++ + + + + + + + +
param team:The team to leave.
param user:The user making the retraction.
param comment:An optional explanation about why the change was made.
+ +
+ + + + + +Team + + + + + + + + + + +
+ + +

Create a PPA.

+ +++ + + + + + + + + + + + + + + + + + + + + + +
param distribution:
 The distribution that this archive is for.
param name:The name of the new PPA to create.
param displayname:
 The displayname for the new PPA.
param description:
 The description for the new PPA.
param private:Whether or not to create a private PPA. Defaults to +False, which means the PPA will be public.
param suppress_subscription_notifications:
 Whether or not to suppress +emails to new subscribers about their subscriptions. Only +meaningful for private PPAs.
raises:PPACreationError if an error is encountered
return:a PPA IArchive record.
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +

Create a SourcePackageRecipe owned by this person.

+ +++ + + + + + + + + + + + + + + + + + + + + + + + +
param name:the name to use for referring to the recipe.
param description:
 A description of the recipe.
param recipe_text:
 The text of the recipe.
param distroseries:
 The distroseries to use.
param registrant:
 The person who created this recipe.
param daily_build_archive:
 The archive to use for daily builds.
param build_daily:
 If True, build this recipe daily (if changed).
return:a SourcePackageRecipe.
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +

Get a text line that is suitable to be used for a sources.list +entry.

+

It will create a new IArchiveAuthToken if one doesn't already exist.

+

It raises Unauthorized if the context user does not have a +valid subscription for the target archive or the caller is not +context user itself.

+ +
+ + + + + + + + + + +
+ + +Set the status of this person's account. + + + + + + +The status of this account + + + + + + + + + + + + +Status change comment + + + + + + + + + +

Add a language to this person's preferences.

+ +++ + + + +
param language:An object providing ILanguage.
+

If the given language is one of the user's preferred languages +already, nothing will happen.

+ +
+ + + + + + + + + + +
+ + +

Remove a language from this person's preferences.

+ +++ + + + +
param language:An object providing ILanguage.
+

If the given language is not present, nothing will happen.

+ +
+ + + + + + + + + + +
+
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +The status of this person's account + + + + + + + + + + + + +Account status history + + + + + +List of this team's admins. + + + + + +

All specifications

+

A list of all specifications, regardless of status or approval or completion, for this object.

+ +
+ +
+ + +

Default PPA

+

The PPA named 'ppa' owned by this person.

+ +
+ +
+ + +

Confirmed emails of this person.

+

Confirmed emails are the ones in the VALIDATED state

+ +
+ +
+ + +Date Created + + + + + +Former members of the team. + + + + + +

Subscription period

+

Number of days a new subscription lasts before expiring. You can customize the length of an individual subscription when approving it. Leave this empty or set to 0 for subscriptions to never expire.

+ +
+ +
+ + +

Self renewal period

+

Number of days members can renew their own membership. The number can be from 1 to 3650 (10 years).

+ +
+ +
+ + +

Description

+

Details about interests and goals. Use plain text, paragraphs are preserved and URLs are linked.

+ +
+ +
+ + +

Display Name

+

Your name as you would like it displayed throughout Launchpad. Most people use their full name here.

+ +
+ +
+ + +Expired members of the team. + + + + + +List of valid OpenPGP keys ordered by ID + + + + + +Hide my email addresses from other Launchpad users + + + + + +

Homepage Content

+

Obsolete. Use description.

+ +
+ +
+ + +

ID

+

Internal immutable identifier for this person. Only visible by privileged users.

+ +
+ +
+ + +Other teams which have been invited to become members of this team. + + + + + +List of IRC nicknames of this Person. + + + + + +Is this a probationary user? + + + + + +Is this object a team? + + + + + +Signed Ubuntu Code of Conduct + + + + + +This is an active user or a team. + + + + + +List of Jabber IDs of this Person. + + + + + +

Karma

+

The cached total karma for this person.

+ +
+ +
+ + +List of languages known by this person + + + + + +

Logo

+

An image of exactly 64x64 pixels that will be displayed in the heading of all pages related to you. Traditionally this is a logo, a small picture or a personal mascot. It should be no bigger than 50kb in size.

+ +
+ +
+ + +

Mailing List Auto-subscription Policy

+

This attribute determines whether a person is automatically subscribed to a team's mailing list when the person joins said team.

+ +
+ + + + +
+ + +List of direct members with ADMIN or APPROVED status + + + + + +

Active TeamMemberships for this object's members.

+

Active TeamMemberships are the ones with the ADMIN or APPROVED status. The results are ordered using Person.sortingColumns.

+ +
+ +
+ + +

Membership policy

+

The policies that describe who can be a member. The choice of policy +reflects the need to build a community (inclusive) versus the need to +control Launchpad projects, branches, and PPAs (exclusive).

+ +
+ + + + + +
+ + +All TeamMemberships for Teams this Team or Person is an active member of. + + + + + +

Mugshot

+

A large image of exactly 192x192 pixels, that will be displayed on your home page in Launchpad. Traditionally this is a great big picture of your grinning face. Make the most of it! It should be no bigger than 100kb in size.

+ +
+ +
+ + +

Name

+

A short unique name, beginning with a lower-case letter or number, and containing only letters, numbers, dots, hyphens, or plus signs.

+ +
+ +
+ + +

Open membership invitations.

+

All TeamMemberships which represent an invitation (to join a team) sent to this person.

+ +
+ +
+ + +

All participants of this team.

+

List of all direct and indirect people and teams who, one way or another, are a part of this team. If you want a method to check if a given person is a member of a team, you should probably look at IPerson.inTeam().

+ +
+ +
+ + +

PPAs for this person.

+

PPAs owned by the context person ordered by name.

+ +
+ +
+ + +

Preferred email address

+

The preferred email address for this person. The one we'll use to communicate with them.

+ +
+ +
+ + +

This team is private

+

Private teams are visible only to their members.

+ +
+ +
+ + +People who have applied to join the team. + + + + + +All recipes associated with the object. + + + + + +When someone's membership is about to expire, notify them and + + + + + + + +List of Social Accounts of this Person. + + + + + +List of SSH keys + + + + + +

All subteams of this team.

+

A subteam is any team that is a member (either directly or +indirectly) of this team. As an example, let's say we have +this hierarchy of teams:

+
+
Rosetta Translators
+
+
Rosetta pt Translators
+
Rosetta pt_BR Translators
+
+
+
+

In this case, both 'Rosetta pt Translators' and 'Rosetta pt_BR +Translators' are subteams of the 'Rosetta Translators' team, +and all members of both subteams are considered members of +"Rosetta Translators".

+ +
+ +
+ + +

Membership policy

+

Obsolete: use membership_policy

+ +
+ + + + + +
+ + +

All superteams of this team.

+

A superteam is any team that this team is a member of. For +example, let's say we have this hierarchy of teams, and we are +the "Rosetta pt_BR Translators":

+
+
Rosetta Translators
+
+
Rosetta pt Translators
+
Rosetta pt_BR Translators
+
+
+
+

In this case, we will return both 'Rosetta pt Translators' and +'Rosetta Translators', because we are member of both of them.

+ +
+ +
+ + +

Team Description

+

Obsolete. Use description.

+ +
+ +
+ + +Team Owner + + + + + +The time zone of this object. + + + + + +

Valid specifications

+

All specifications that are not obsolete. When called from an ISpecificationGoal it will also exclude the ones that have not been accepted for that goal

+ +
+ +
+ + +

Visibility

+

Anyone can see a public team's data. Only team members can see private team data.

+ +
+ + + +
+ + +All WikiNames of this Person, sorted alphabetically by URL. + + + +
+ + + + +

Subscription period

+

Number of days a new subscription lasts before expiring. You can customize the length of an individual subscription when approving it. Leave this empty or set to 0 for subscriptions to never expire.

+ +
+ +
+ + +

Self renewal period

+

Number of days members can renew their own membership. The number can be from 1 to 3650 (10 years).

+ +
+ +
+ + +

Description

+

Details about interests and goals. Use plain text, paragraphs are preserved and URLs are linked.

+ +
+ +
+ + +

Display Name

+

Your name as you would like it displayed throughout Launchpad. Most people use their full name here.

+ +
+ +
+ + +Hide my email addresses from other Launchpad users + + + + + +

Homepage Content

+

Obsolete. Use description.

+ +
+ +
+ + +

Logo

+

An image of exactly 64x64 pixels that will be displayed in the heading of all pages related to you. Traditionally this is a logo, a small picture or a personal mascot. It should be no bigger than 50kb in size.

+ +
+ +
+ + +

Mailing List Auto-subscription Policy

+

This attribute determines whether a person is automatically subscribed to a team's mailing list when the person joins said team.

+ +
+ + + + +
+ + +

Membership policy

+

The policies that describe who can be a member. The choice of policy +reflects the need to build a community (inclusive) versus the need to +control Launchpad projects, branches, and PPAs (exclusive).

+ +
+ + + + + +
+ + +

Mugshot

+

A large image of exactly 192x192 pixels, that will be displayed on your home page in Launchpad. Traditionally this is a great big picture of your grinning face. Make the most of it! It should be no bigger than 100kb in size.

+ +
+ +
+ + +

Name

+

A short unique name, beginning with a lower-case letter or number, and containing only letters, numbers, dots, hyphens, or plus signs.

+ +
+ +
+ + +When someone's membership is about to expire, notify them and + + + + + + + +

Membership policy

+

Obsolete: use membership_policy

+ +
+ + + + + +
+ + +

Team Description

+

Obsolete. Use description.

+ +
+ +
+ + +Team Owner + + + + + +

Visibility

+

Anyone can see a public team's data. Only team members can see private team data.

+ +
+ + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

TeamMembership for Users.

+

This table includes direct team members only. Indirect memberships are +handled by the TeamParticipation table.

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + +

Set this membership's expiration date.

+

The given date must be None or in the future and the given user must +be allowed to change this membership's expiration date as per the +rules defined in canChangeExpirationDate().

+ +
+ + + + + +Date expires + + + + + + +
+ + +

Set the status of this membership.

+

The user and comment are stored in last_changed_by and +last_change_comment and may also be stored in proposed_by +(and proponent_comment), reviewed_by (and reviewer_comment) or +acknowledged_by (and acknowledger_comment), depending on the state +transition.

+

The given status must be different than the current status.

+

Return True if the status got changed, otherwise False.

+ +
+ + + + + +The state of this membership + + + + + + + + + + + + + +Reviewer comment + + + + + +Do not send notifications of status change. For use by Launchpad administrators only. + + + + + + +
+
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +Date expires + + + + + +

Date joined

+

The date in which this membership was made active for the first time.

+ +
+ +
+ + +Comment on the last change + + + + + +Last person who change this + + + + + +Member + + + + + +The state of this membership + + + + + + + + + + + + + +Team + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +A blob which we will store in the database temporarily. + + + + + + + + + + + + + + + + + + + + + + + + + +Return True if this blob has been processed. + + + + + + + + + + +Returns a dict containing the processed blob data. + + + + + + + + + + + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +UUID + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Minimal product series info for the timeline. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +Is series the development focus of the project + + + + + +List of milestones and releases + + + + + +

Name

+

The name of the series is a short, unique name that identifies it, being used in URLs. It must be all lowercase, with no special characters. For example, '2.0' or 'trunk'.

+ +
+ +
+ + +Project + + + + + +Status + + + + + + + + + + + + +

Series URI

+

foo

+ +
+ +
+
+ + + + +Is series the development focus of the project + + + + + +List of milestones and releases + + + + + +

Name

+

The name of the series is a short, unique name that identifies it, being used in URLs. It must be all lowercase, with no special characters. For example, '2.0' or 'trunk'.

+ +
+ +
+ + +Project + + + + + +Status + + + + + + + + + + + + +

Series URI

+

foo

+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +A TranslationGroup. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +

Name

+

Keep this name very short, unique, and +descriptive, because it will be used in URLs. Examples: +gnome-translation-project, ubuntu-translators.

+ +
+ +
+ + +

Title

+

Title of this Translation Group. +This title is displayed at the top of the Translation Group +page and in lists or reports of translation groups. Do not +add "translation group" to this title, or it will be shown +double.

+ +
+ +
+
+ + + + +

Name

+

Keep this name very short, unique, and +descriptive, because it will be used in URLs. Examples: +gnome-translation-project, ubuntu-translators.

+ +
+ +
+ + +

Title

+

Title of this Translation Group. +This title is displayed at the top of the Translation Group +page and in lists or reports of translation groups. Do not +add "translation group" to this title, or it will be shown +double.

+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +An entry of the Translation Import Queue. + + + + + + + + + + + + + + + + + + + + + + + + + +

Transition to a new status if possible.

+ +++ + + + + + + +
param new_status:
 Status to transition to.
param user:The user that is doing the transition.
+ +
+ + + + + +The status of the import. + + + + + + + + + + + + + +
+
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +The timestamp when this queue entry was created. + + + + + +The timestamp when the status was changed. + + + + + +Series + + + + + +

Error output

+

Output from most recent import attempt.

+ +
+ +
+ + +The file format of the import. + + + + + + + + + + + +The entry ID + + + + + +

Path

+

The path to this file inside the source tree. Includes the filename.

+ +
+ +
+ + +Series + + + + + +The sourcepackage associated with this entry. + + + + + +The status of the import. + + + + + + + + + + + + +

Uploader

+

The person that uploaded this file to Launchpad.

+ +
+ +
+
+ + + + +The timestamp when the status was changed. + + + + + +

Path

+

The path to this file inside the source tree. Includes the filename.

+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +A vulnerability. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +The person who created the vulnerability. + + + + + +External CVE reference corresponding to this vulnerability, if any. + + + + + +Coordinated Release Date. + + + + + +The date this vulnerability was created. + + + + + +The date this vulnerability was made public. + + + + + +Date when a security notice was issued for this vulnerability. + + + + + +A short description of the vulnerability. + + + + + +Distribution + + + + + +ID + + + + + +Indicates the work priority, not the severity + + + + + + + + + + + + +Used to explain why our importance differs from somebody else's CVSS score. + + + + + +

Information type

+

Indicates the privacy of the vulnerability.

+ +
+ + + + + + + +
+ + +Explains why we're ignoring this vulnerability. + + + + + +Free-form notes for this vulnerability. + + + + + +

Private

+

Private vulnerabilities are visible only to their subscribers.

+ +
+ +
+ + +The status of the vulnerability. + + + + + + + +
+ + + + +External CVE reference corresponding to this vulnerability, if any. + + + + + +Coordinated Release Date. + + + + + +The date this vulnerability was made public. + + + + + +Date when a security notice was issued for this vulnerability. + + + + + +A short description of the vulnerability. + + + + + +Indicates the work priority, not the severity + + + + + + + + + + + + +Used to explain why our importance differs from somebody else's CVSS score. + + + + + +

Information type

+

Indicates the privacy of the vulnerability.

+ +
+ + + + + + + +
+ + +Explains why we're ignoring this vulnerability. + + + + + +Free-form notes for this vulnerability. + + + + + +The status of the vulnerability. + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +A Job that delivers an event to a webhook consumer. + + + + + + + + + + + + + + + + + + + + + + + + + +

Attempt to deliver the event again.

+

Launchpad will automatically retry regularly for 24 hours, but +this can be used after it gives up or to avoid waiting for the +next automatic attempt.

+ +
+ + + + + +

Reset automatic retries

+

Restart the 24 hour automatic retry window as well as trying again now.

+ +
+ +
+
+
+ +
+
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +Date created + + + + + +

Date first sent

+

Timestamp of the first delivery attempt.

+ +
+ +
+ + +

Date scheduled

+

Timestamp of the next delivery attempt.

+ +
+ +
+ + +

Date sent

+

Timestamp of the last delivery attempt.

+ +
+ +
+ + +

Error message

+

Details of the error encountered by the most recent delivery attempt.

+ +
+ +
+ + +Event type + + + + + +Event payload + + + + + +

Pending

+

Whether a delivery attempt is in progress.

+ +
+ +
+ + +

Successful

+

Whether the most recent delivery attempt succeeded, or null if no attempts have been made yet.

+ +
+ +
+ + +

Webhook

+

The webhook that this delivery is for.

+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Send a test event. + + + + + + + + + + + + + + + +Set the secret used to sign deliveries. + + + + + + +

Secret

+

An optional string used to sign delivery bodies with HMAC-SHA1 in the X-Hub-Signature header. This must be less than 200 bytes long.

+ +
+ +
+
+
+ +
+
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +

Active

+

Deliver details of subscribed events.

+ +
+ +
+ + +Date created + + + + + +Date last modified + + + + + +Recent deliveries for this webhook. + + + + + +Delivery URL + + + + + +Event types + + + + + +

Git ref pattern

+

Pattern to match against git-ref/branch name of an event, to filter webhook triggers

+ +
+ +
+ + +

Registrant

+

The person who created this webhook.

+ +
+ +
+ + +

Target

+

The object for which this webhook receives events.

+ +
+ +
+
+ + + + +

Active

+

Deliver details of subscribed events.

+ +
+ +
+ + +Delivery URL + + + + + +Event types + + + + + +

Git ref pattern

+

Pattern to match against git-ref/branch name of an event, to filter webhook triggers

+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Create a new webhook. + + + + + + +Delivery URL + + + + + +

Active

+

Deliver details of subscribed events.

+ +
+ +
+ + +Event types + + + + + +

Secret

+

An optional string used to sign delivery bodies with HMAC-SHA1 in the X-Hub-Signature header. This must be less than 200 bytes long.

+ +
+ +
+
+
+ + + + + + +
+
+ + + + + The canonical link to this resource. + + + + + The canonical human-addressable web link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +Webhooks for this target. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Wiki for Users + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The canonical link to this resource. + + + + + + The link to the WADL description of this resource. + + + + + + The value of the HTTP ETag for this resource. + + + + +Owner + + + + + +The URL for this wiki home page. + + + + + +Wiki host + + + + + +Wikiname + + + + + + + + +Wiki host + + + + + +Wikiname + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
diff --git a/.local/share/jupyter/nbextensions/printview/main.js b/.local/share/jupyter/nbextensions/printview/main.js new file mode 100644 index 0000000000000000000000000000000000000000..ee45f332c9b5fd60255d2ffab6f7aee628a02118 --- /dev/null +++ b/.local/share/jupyter/nbextensions/printview/main.js @@ -0,0 +1,75 @@ +// call "jupyter nbconvert" and open generated html file in new tab + +define([ + 'base/js/namespace', + 'jquery', + 'base/js/events', + 'base/js/utils' +], function( + IPython, + $, + events, + utils +) { + "use strict"; + + var nbconvert_options = '--to html'; + var extension = '.html'; + var open_tab = true; + + /** + * Get option from config + */ + var initialize = function () { + var config = IPython.notebook.config; + if (config.data.hasOwnProperty('printview_nbconvert_options') ) { + nbconvert_options = config.data.printview_nbconvert_options; + if (nbconvert_options.search('pdf') > 0) extension = '.pdf'; + if (nbconvert_options.search('slides') > 0) extension = '.slides.html'; + } + if (config.data.hasOwnProperty('printview_open_tab') ) { + if (typeof(config.data.printview_open_tab) === "boolean") { + open_tab = config.data.printview_open_tab; + } + } + }; + + /** + * Call nbconvert using the current notebook server profile + * + */ + var callNbconvert = function () { + events.off('notebook_saved.Notebook'); + var kernel = IPython.notebook.kernel; + var name = IPython.notebook.notebook_name; + var command = 'import os; os.system(\'jupyter nbconvert ' + nbconvert_options + ' \"' + name + '\"\')'; + function callback() { + if (open_tab === true) { + var url = utils.splitext(name)[0] + extension; + window.open(url, '_blank'); + } + } + kernel.execute(command, { shell: { reply : callback } }); + $('#doPrintView').blur(); + }; + + var nbconvertPrintView = function () { + events.on('notebook_saved.Notebook',callNbconvert); + IPython.notebook.save_notebook(false); + }; + + var load_ipython_extension = function() { + $(IPython.toolbar.add_buttons_group([ + IPython.keyboard_manager.actions.register ({ + help : 'Create static print view', + icon : 'fa-print', + handler: nbconvertPrintView + }, 'create-static-printview', 'printview'), + ])).find('.btn').attr('id', 'doPrintView'); + return IPython.notebook.config.loaded.then(initialize); + }; + + return { + load_ipython_extension : load_ipython_extension + }; +}); diff --git a/.local/share/jupyter/nbextensions/python-markdown/main.js b/.local/share/jupyter/nbextensions/python-markdown/main.js new file mode 100644 index 0000000000000000000000000000000000000000..84f39fe25749d238bc9e92548ea3b8e9a38a23b9 --- /dev/null +++ b/.local/share/jupyter/nbextensions/python-markdown/main.js @@ -0,0 +1,212 @@ +// Allow Python-code in markdown cells +// Encapsulate using {{...}} +// - You can also return html or markdown from your Python code +// - You can embed images, however they will be sanitized on reload. + +// TODO: Markdown cells will only be reevaluated when a notebook is dirty +// (i.e. you have made changes). If you save it before reevaluating MD cells, +// they will show the old value. + +define([ + 'base/js/namespace', + 'jquery', + 'require', + 'notebook/js/cell', + 'base/js/security', + 'components/marked/lib/marked', + 'base/js/events', + 'notebook/js/textcell' +], function(IPython, $, requirejs, cell, security, marked, events, textcell) { + "use strict"; + + /* + * Find Python expression enclosed in {{ }}, execute and add to text as + * tags. The actual content gets filled in later by a callback. + * Already executed expressions are cached in cell metadata. + * + * @method execute_python + * @param cell {Cell} notebook cell + * @param text {String} text in cell + */ + var execute_python = function(cell,text) { + /* never execute code in untrusted notebooks */ + if (IPython.notebook.trusted === false ) { + return undefined + } + /* always clear stored variables if notebook is dirty */ + if (IPython.notebook.dirty === true ) delete cell.metadata.variables; + // search for code in double curly braces: {{}} + var found = false; + var newtext = text.replace(/{{(.*?)}}/g, function(match,tag,cha) { + found = true; + if (tag === "") return undefined; + var code = tag; + var id = 'python_'+cell.cell_id+'_'+cha; /* create an individual ID */ + var thiscell = cell; + var thismatch = tag; + + /* there a two possible options: + a) notebook dirty or variable not stored in metadata: evaluate variable + b) notebook clean and variable stored in metadata: display stored value + */ + if (typeof cell.metadata.variables === "undefined") { + cell.metadata.variables = {} + } + var val = cell.metadata.variables[thismatch]; + if (IPython.notebook.dirty === true || val === undefined || jQuery.isEmptyObject(val)) { + cell.metadata.variables[thismatch] = {}; + var execute_callback = function (out_data) + { + var html; + if (out_data.msg_type === "error") { + var text = "**" + out_data.content.ename + "**: " + out_data.content.evalue; + html = marked(text); + } else if (out_data.msg_type === "stream") { + html = marked(out_data.content.text); + var t = html.match(/^\s*

([\s\S]*?)<\/p>\s*$/); //strip

and

that marked (maybe) adds and we don't want + html = t !== null ? t[1] : html; + var q = html.match(/^'([\s\S]*?)'$/); // strip quotes from strings + if (q !== null) html = q[1] + } else if (out_data.msg_type === "execute_result" | out_data.msg_type === "display_data" ) { + var ul = out_data.content.data; + if (ul != undefined) { + if (ul['text/latex'] != undefined) { + html = ul['text/latex']; + } else if (ul['image/svg+xml'] != undefined) { + var svg = ul['image/svg+xml']; + /* embed SVG in an tag, still get eaten by sanitizer... */ + svg = btoa(svg); + html = ''; + } else if (ul['image/jpeg'] != undefined) { + var jpeg = ul['image/jpeg']; + html = ''; + } else if (ul['image/png'] != undefined) { + var png = ul['image/png']; + html = ''; + } else if (ul['text/markdown'] != undefined) { + html = marked(ul['text/markdown']); + } else if (ul['text/html'] != undefined) { + html = ul['text/html']; + } else { + html = marked(ul['text/plain']); + // [\s\S] is used to also catch newlines + var t = html.match(/^\s*

([\s\S]*?)<\/p>\s*$/); //strip

and

that marked adds and we don't want + html = t !== null ? t[1] : html; + var q = html.match(/^'([\s\S]*?)'$/); // strip quotes from strings + if (q !== null) html = q[1] + } + } + } else { + return; + } + thiscell.metadata.variables[thismatch] = html; + var el = document.getElementById(id); + el.innerHTML = el.innerHTML + html; // output result + }; + var callbacks = { iopub : { output: execute_callback } }; + if (cell.notebook.kernel != null) { + cell.notebook.kernel.execute(code, callbacks, {silent: false, store_history : false, stop_on_error: false }); + return ""; // add HTML tag with ID where output will be placed + } + return undefined; + } else { + /* Notebook not dirty: replace tags with metadata */ + val = cell.metadata.variables[tag]; + return ""+val+"" + } + }); + if (found == true) return newtext; + return undefined + }; + + /* + * Render markdown cell and replace {{...}} with python code + * + */ + var render_cell = function(cell) { + var element = cell.element.find('div.text_cell_render'); + var text = execute_python(cell, element[0].innerHTML); + if (text !== undefined) { + element[0].innerHTML = text; + MathJax.Hub.Queue(["Typeset",MathJax.Hub,element[0]]); + } + }; + + /* force rendering of markdown cell if notebook is dirty */ + var original_render = textcell.MarkdownCell.prototype.render; + textcell.MarkdownCell.prototype.render = function() { + if (IPython.notebook.dirty === true) { + this.rendered = false + } + return original_render.apply(this) + }; + + var set_trusted_indicator = function() { + var ind = $('.notebook-trusted'); + if (IPython.notebook.trusted === true) { + ind.attr('title','Notebook is trusted'); + ind.removeClass('fa-question'); + ind.addClass('fa-check'); + } else { + ind.attr('title','Notebook is not trusted'); + ind.removeClass('fa-check'); + ind.addClass('fa-question'); + } + }; + + + /** + * Add CSS file + * + * @param name filename + */ + var load_css = function (name) { + var link = document.createElement("link"); + link.type = "text/css"; + link.rel = "stylesheet"; + link.href = requirejs.toUrl(name); + document.getElementsByTagName("head")[0].appendChild(link); + }; + + + /** + * Update all references variables in markdown cells + * + */ + var update_md_cells = function () { + var ncells = IPython.notebook.ncells(); + var cells = IPython.notebook.get_cells(); + for (var i = 0; i < ncells; i++) { + var cell = cells[i]; + if (cell.metadata.hasOwnProperty('variables')) { + render_cell(cell) + } + } + }; + + var load_ipython_extension = function() { + load_css('./main.css'); + events.on("rendered.MarkdownCell", function (event, data) { + render_cell(data.cell); + }); + events.on("trust_changed.Notebook", set_trusted_indicator); + + $('#save_widget').append(''); + set_trusted_indicator(); + + /* Show values stored in metadata on reload */ + events.on("kernel_ready.Kernel", function () { + if (Jupyter.notebook !== undefined && Jupyter.notebook._fully_loaded) { + update_md_cells() + } else { + events.on("notebook_loaded.Notebook", function () { + update_md_cells() + }) + } + }); + }; + + return { + load_ipython_extension : load_ipython_extension + }; +}); diff --git a/.local/share/jupyter/nbextensions/qtconsole/qtconsole.yaml b/.local/share/jupyter/nbextensions/qtconsole/qtconsole.yaml new file mode 100644 index 0000000000000000000000000000000000000000..102310d818d87493d7955bd2211d4cdbbad4e2e9 --- /dev/null +++ b/.local/share/jupyter/nbextensions/qtconsole/qtconsole.yaml @@ -0,0 +1,6 @@ +Type: IPython Notebook Extension +Name: Launch QTConsole +Link: README.md +Description: Launch a QTConsole attached to the running kernel +Main: qtconsole.js +Compatibility: 4.x diff --git a/.local/share/jupyter/nbextensions/rubberband/main.css b/.local/share/jupyter/nbextensions/rubberband/main.css new file mode 100644 index 0000000000000000000000000000000000000000..39ad1dfdd0025d70faa79be10f9cc7a5842eae6a --- /dev/null +++ b/.local/share/jupyter/nbextensions/rubberband/main.css @@ -0,0 +1,12 @@ +.highlight-drag +{ + background-color: transparent; + border: dashed #ff3333 3px; + position: absolute; + display: none; +} + +.cell.selected +{ + background-color: #fcfcfc; +} diff --git a/.local/share/jupyter/nbextensions/rubberband/rubberband.yaml b/.local/share/jupyter/nbextensions/rubberband/rubberband.yaml new file mode 100644 index 0000000000000000000000000000000000000000..fa643c51afdfb54820a9602c62402f08b3ebf585 --- /dev/null +++ b/.local/share/jupyter/nbextensions/rubberband/rubberband.yaml @@ -0,0 +1,7 @@ +Type: IPython Notebook Extension +Name: Rubberband +Description: The rubberband extension allows selecting multiple cells +Link: readme.md +Icon: icon.png +Main: main.js +Compatibility: 4.x, 5.x diff --git a/.local/share/jupyter/nbextensions/ruler/ruler.yaml b/.local/share/jupyter/nbextensions/ruler/ruler.yaml new file mode 100644 index 0000000000000000000000000000000000000000..dee55c832df7e6dc981992e92da6f5e8e2ff300d --- /dev/null +++ b/.local/share/jupyter/nbextensions/ruler/ruler.yaml @@ -0,0 +1,32 @@ +Type: IPython Notebook Extension +Name: Ruler +Description: This extension enables the Ruler CodeMirror feature +Link: readme.md +Icon: icon.png +Main: main.js +Compatibility: 4.x, 5.x +Parameters: + +- name: ruler_column + input_type: list + list_element: + input_type: number + description: Column where ruler is displayed + default: [78] + +- name: ruler_color + input_type: list + list_element: + input_type: color + description: Ruler color + default: ["#ff0000"] + +- name: ruler_linestyle + description: 'Ruler style, e.g. solid, dashed' + input_type: list + default: ['dashed'] + +- name: ruler_do_css_patch + description: apply css patch for ruler padding bug in notebook >= 4.3 + input_type: checkbox + default: true diff --git a/.local/share/jupyter/nbextensions/runtools/main.js b/.local/share/jupyter/nbextensions/runtools/main.js new file mode 100644 index 0000000000000000000000000000000000000000..c07de86a71165f61b8f307549a9b333f502ac3da --- /dev/null +++ b/.local/share/jupyter/nbextensions/runtools/main.js @@ -0,0 +1,745 @@ +// Extended code execution commands and more + +define([ + 'base/js/namespace', + 'jquery', + 'require', + 'base/js/events', + 'services/config', + 'base/js/utils', + 'notebook/js/codecell' +], function(Jupyter, $, requirejs, events, configmod, utils, codecell) { + "use strict"; + + var run_list = []; /* list of cells to be run */ + + // define default config parameter values + var params = { + run_cells_above: 'Alt-a', + run_cells_below: 'Alt-b', + toggle_marker: 'Alt-t', + mark_all_codecells: 'Alt-m', + unmark_all_codecells: 'Alt-u', + run_marked_cells: 'Alt-r', + run_all_cells: 'Alt-x', + run_all_cells_ignore_errors: 'Alt-f', + stop_execution: 'Ctrl-c', + marked_color: '#20f224', + scheduled_color: '#00def0', + run_color: '#f30a2d' + }; + + /** + * Add event if user clicks on codemirror gutter + * + */ + function add_gutter_events() { + var ncells = Jupyter.notebook.ncells(); + var cells = Jupyter.notebook.get_cells(); + for (var i = 0; i < ncells; i++) { + var cell = cells[i]; + if ((cell.cell_type === "code")) { + cell.code_mirror.on("gutterClick", changeEvent); + if (is_marked(cell)) { + var g = cell.code_mirror.getGutterElement(); + $(g).css({ + "background-color": params.marked_color + }); + } + } + } + } + + /* + * Initialize toolbar and gutter after config was loaded + */ + function initialize() { + $.extend(true, params, Jupyter.notebook.config.data.runtools); + + add_gutter_events(); + + /* Add run control buttons to toolbar */ + $(Jupyter.toolbar.add_buttons_group([ + Jupyter.keyboard_manager.actions.register ({ + help: 'Toggle Runtools Toolbar', + icon: 'fa-cogs', + handler: toggle_toolbar + }, 'toggle-runtools-toolbar', 'runtools') + ])).find('.btn').attr('id', 'toggle_runtools').css({ + 'outline': 'none' + }); + + /* Add keyboard shortcuts */ + var add_command_shortcuts = {}; + add_command_shortcuts[params["run_cells_above"]] = { + help: 'Run cells above', + help_index: 'xa', + handler: function() { + execute_cells_above(); + return false; + } + }; + add_command_shortcuts[params["run_cells_below"]] = { + help: 'Run cells below', + help_index: 'aa', + handler: function() { + execute_cells_below(); + return false; + } + }; + add_command_shortcuts[params["toggle_marker"]] = { + help: 'Toggle marker', + help_index: 'mt', + handler: function() { + toggle_marker(); + return false; + } + }; + add_command_shortcuts[params["mark_all_codecells"]] = { + help: 'Mark all codecells', + help_index: 'ma', + handler: function() { + mark_all(); + return false; + } + }; + add_command_shortcuts[params["unmark_all_codecells"]] = { + help: 'Unmark all codecells', + help_index: 'mu', + handler: function() { + mark_none(); + return false; + } + }; + add_command_shortcuts[params["run_marked_cells"]] = { + help: 'Run marked cells', + help_index: 'rm', + handler: function() { + run_marked_cells(); + return false; + } + }; + add_command_shortcuts[params["run_all_cells"]] = { + help: 'Run all cells', + help_index: 'ra', + handler: function() { + var pos = Jupyter.notebook.element.scrollTop(); + execute_all_cells(); + Jupyter.notebook.element.animate({ + scrollTop: pos + }, 100); + return false; + } + }; + add_command_shortcuts[params["run_all_cells_ignore_errors"]] = { + help: 'Run all cells - ignore errors', + help_index: 'rf', + handler: function() { + run_all_cells_ignore_errors(); + return false; + } + }; + Jupyter.keyboard_manager.command_shortcuts.add_shortcuts(add_command_shortcuts); + Jupyter.keyboard_manager.edit_shortcuts.add_shortcuts(add_command_shortcuts); + + events.on('finished_execute.CodeCell', finished_execute_event); + } + + /** + * Hide or show a cell + * + * @param cell + * @param io 'i' for cell input, 'o' for cell output + * @param showme {Boolean} show (true) or hide (false) cell + */ + function showCell(cell, io, showme) { + if (io === 'i') { + if (showme === true) { + cell.element.find("div.input").show(); + cell.metadata.hide_input = false; + } else { + cell.element.find("div.input").hide(); + cell.metadata.hide_input = true; + } + } else { + if (showme === true) { + cell.element.find('div.output').show(); + cell.metadata.hide_output = false; + } else { + cell.element.find('div.output').hide(); + cell.metadata.hide_output = true; + } + } + } + + function _show_input_output_of_marked(show, char) { + var cells = Jupyter.notebook.get_cells(); + var ncells = cells.length; + for (var i = 0; i < ncells; i++) { + var _cell = cells[i]; + if (is_marked(_cell)) + showCell(_cell, char, show); + } + } + + /** + * Hide or show input of all marked code cells + * + * @param show {Boolean} show (true) or hide (false) code cells + */ + function show_input(show) { + _show_input_output_of_marked(show, 'i'); + } + + /** + * Hide or show output area of all marked code cells + * + * @param {Boolean} show show (true) or hide (false) + */ + function show_output(show) { + _show_input_output_of_marked(show, 'o'); + } + + + /** + * Execute next cell in run list, if it is still marked + * + */ + function execute_next_marked_cell() { + var cells = Jupyter.notebook.get_cells(); + var end = cells.length; + while (run_list.length > 0) { + var runcell = run_list.shift(); + for (var i = 0; i < end; i++) { + if (runcell === cells[i]) { + if (runcell.metadata.run_control !== undefined && runcell.metadata.run_control.marked === true) { + var g = runcell.code_mirror.getGutterElement(); + $(g).css({ + "background-color": params.run_color + }); + runcell.execute(); + return; + } + } + } + } + } + + function _execute_without_selecting(idx_start, idx_end, stop_on_error) { + // notebook.execute_cells alters selection, this doesn't + var cells = Jupyter.notebook.get_cells(); + idx_start = idx_start !== undefined ? idx_start : 0; + idx_end = idx_end !== undefined ? idx_end : cells.length; + for (var ii = idx_start; ii < idx_end; ii++) { + cells[ii].execute(stop_on_error); + } + } + + function execute_cells_above() { + _execute_without_selecting(0, Jupyter.notebook.get_selected_index()); + } + + function execute_cells_below() { + _execute_without_selecting(Jupyter.notebook.get_selected_index(), undefined); + } + + function execute_all_cells(stop_on_error) { + _execute_without_selecting(0, undefined, stop_on_error); + } + + /** + * Run code cells marked in metadata + * + */ + function run_marked_cells() { + var cells = Jupyter.notebook.get_cells(); + var end = cells.length; + run_list = []; + /* Show all marked cells as scheduled to be run with new gutter background color */ + for (var i = 0; i < end; i++) { + var cell = cells[i]; + if (cell instanceof codecell.CodeCell) { + var last_line = cell.code_mirror.lastLine(); + var cell_empty = ( last_line === 0 && cell.code_mirror.getLine(last_line) === ""); + if (cell.metadata.run_control !== undefined && cell_empty === false) { + if (cell.metadata.run_control.marked === true) { + var g = cell.code_mirror.getGutterElement(); + $(g).css({ + "background-color": params.scheduled_color + }); + run_list.push(cell); + } + } + } + } + execute_next_marked_cell(); + } + + /* + * Execute next cell in run_list when notified execution of last cell has been finished + * @param evt Event + * @param data Cell that has finished executing + */ + var finished_execute_event = function(evt, data) { + var cell = data.cell; + /* Reset gutter color no non-queued state */ + if (is_marked(cell)) { + var g = cell.code_mirror.getGutterElement(); + $(g).css({ + "background-color": params.marked_color + }); + } + execute_next_marked_cell(); + }; + + /** + * + * @param cell + * @param value + */ + function setCell(cell, value) { + if (!(cell instanceof codecell.CodeCell)) return; + if (cell.metadata.run_control === undefined) cell.metadata.run_control = {}; + if (cell.metadata.run_control.marked === undefined) cell.metadata.run_control.marked = false; + if (value === undefined) value = !cell.metadata.run_control.marked; + var g = cell.code_mirror.getGutterElement(); + if (value === false) { + cell.metadata.run_control.marked = false; + $(g).css({ + "background-color": "" + }); + } else { + cell.metadata.run_control.marked = true; + $(g).css({ + "background-color": params.marked_color + }); + } + } + + function setCellsMarked(cells, value) { + var ncells = cells.length; + for (var i = 0; i < ncells; i++) { + setCell(cells[i], value); + } + } + + /** + * Toggle code cell marker + */ + function toggle_marker() { + setCellsMarked(Jupyter.notebook.get_selected_cells(), undefined); + } + + /** + * + */ + function mark_all() { + setCellsMarked(Jupyter.notebook.get_cells(), true); + } + + /** + * + */ + function mark_none() { + setCellsMarked(Jupyter.notebook.get_cells(), false); + } + + /** + * + * @param cell notebook cell instance + * @param state {string} state to be display [ '', 'locked', 'executed', 'modified' ] + */ + function set_cell_state(cell, state) { + var icon = ""; + if (state === 'locked') { + icon = '
' + } + cell.code_mirror.setGutterMarker(0, "CodeMirror-cellstate", celltypeMarker(icon)) + } + + /** + * Change event to mark/unmark cell + * + * @param cm codemirror instance + * @param line current line + * @param gutter not used + */ + function changeEvent(cm, line, gutter) { + if (gutter === "CodeMirror-foldgutter") return; /* Don't collide with codefolding extension */ + + var cmline = cm.doc.children[0].lines[line]; + if (cmline === undefined) { + return; + } + var cell = $(cm.display.gutters).closest('.cell').data('cell'); + if (cell.metadata.run_control === undefined) + cell.metadata.run_control = {}; + setCell(cell, !cell.metadata.run_control.marked); + } + + /** + * + * @param cell cell to be tested + * @returns {boolean} true if marked + */ + var is_marked = function(cell) { + return (cell instanceof codecell.CodeCell) && + cell.metadata.run_control !== undefined && + cell.metadata.run_control.marked; + }; + + /** + * Return div element to set in cellstate gutter + * + * @param val HTML string + * @returns {Element} div Element + */ + function celltypeMarker(val) { + var marker = document.createElement("div"); + marker.style.color = "#822"; + marker.innerHTML = val; + return marker; + } + + /** + * Lock/Unlock current code cell + * if (cell.metadata.run_control != undefined && cell.metadata.run_control.read_only) { + * cell.code_mirror.setOption('readOnly', cell.metadata.run_control.read_only); + */ + var lock_cell = function(locked) { + var ncells = Jupyter.notebook.ncells(); + for (var i = ncells - 2; i >= 0; i--) { + var cells = Jupyter.notebook.get_cells(); + if ((cells[i].cell_type === "code") && is_marked(cells[i])) { + if (locked === true) { + cells[i].metadata.editable = false; + set_cell_state(cells[i], 'locked') + } else { + cells[i].metadata.editable = true; + set_cell_state(cells[i], '') + } + } + } + }; + + /** + * Execute all cells and don't stop on errors + * + */ + var run_all_cells_ignore_errors = function() { + execute_all_cells(false); + }; + + /** + * Create floating toolbar + * + */ + var create_runtools_div = function() { + var btn = '
\ +
\ + \ +
\ +
\ + \ + \ + \ +
\ +
\ + \ + \ + \ + \ + \ + \ +
\ +
'; + + var runtools_wrapper = $('
') + .text("Runtools") + .append(btn) + .draggable() + .append("
"); + + $("#header").append(runtools_wrapper); + $("#runtools-wrapper").css({ + 'position': 'absolute' + }); + $('#run_c').on('click', function(e) { + var idx = Jupyter.notebook.get_selected_index(); + _execute_without_selecting(idx, idx + 1); + e.target.blur(); + }) + .tooltip({ + delay: { + show: 500, + hide: 100 + } + }); + $('#run_ca').on('click', function(e) { + execute_cells_above(); + e.target.blur(); + }) + .tooltip({ + delay: { + show: 500, + hide: 100 + } + }); + $('#run_cb').on('click', function(e) { + execute_cells_below(); + e.target.blur(); + }) + .tooltip({ + delay: { + show: 500, + hide: 100 + } + }); + $('#run_a').on('click', function(e) { + execute_all_cells(); + e.target.blur(); + }) + .tooltip({ + delay: { + show: 500, + hide: 100 + } + }); + $('#run_af').on('click', function(e) { + run_all_cells_ignore_errors(); + e.target.blur() + }) + .tooltip({ + delay: { + show: 500, + hide: 100 + } + }); + $('#run_m').on('click', function(e) { + run_marked_cells(); + e.target.blur() + }) + .tooltip({ + delay: { + show: 500, + hide: 100 + } + }); + $('#interrupt_b').on('click', function(e) { + interrupt_execution(); + e.target.blur() + }) + .tooltip({ + delay: { + show: 500, + hide: 100 + } + }); + $('#mark_toggle').on('click', function() { + toggle_marker() + }) + .tooltip({ + delay: { + show: 500, + hide: 100 + } + }); + $('#mark_all').on('click', function() { + mark_all() + }) + .tooltip({ + delay: { + show: 500, + hide: 100 + } + }); + $('#mark_none').on('click', function() { + mark_none() + }) + .tooltip({ + delay: { + show: 500, + hide: 100 + } + }); + $('#show_input').on('click', function() { + show_input(true); + this.blur() + }) + .tooltip({ + delay: { + show: 500, + hide: 100 + } + }); + $('#hide_input').on('click', function() { + show_input(false); + this.blur() + }) + .tooltip({ + delay: { + show: 500, + hide: 100 + } + }); + $('#show_output').on('click', function() { + show_output(true); + this.blur() + }) + .tooltip({ + delay: { + show: 500, + hide: 100 + } + }); + $('#hide_output').on('click', function() { + show_output(false); + this.blur() + }) + .tooltip({ + delay: { + show: 500, + hide: 100 + } + }); + $('#lock_marked').on('click', function() { + lock_cell(true); + this.blur() + }) + .tooltip({ + delay: { + show: 500, + hide: 100 + } + }); + $('#unlock_marked').on('click', function() { + lock_cell(false); + this.blur() + }) + .tooltip({ + delay: { + show: 500, + hide: 100 + } + }); + }; + + /** + * Show/hide toolbar + * + */ + var toggle_toolbar = function() { + var dom = $("#runtools-wrapper"); + + if (dom.is(':visible')) { + $('#toggle_runtools').removeClass('active').blur(); + dom.hide(); + } else { + $('#toggle_runtools').addClass('active'); + dom.show(); + } + + if (dom.length === 0) { + create_runtools_div() + } + }; + + + /** + * Add CSS file + * + * @param name filename + */ + var load_css = function(name) { + var link = document.createElement("link"); + link.type = "text/css"; + link.rel = "stylesheet"; + link.href = requirejs.toUrl(name); + document.getElementsByTagName("head")[0].appendChild(link); + }; + + /** + * Add gutter to a new cell + * + * @param event + * @param nbcell + * + */ + var createCell = function(event, nbcell) { + var cell = nbcell.cell; + if (cell instanceof codecell.CodeCell) { + var gutters = cell.code_mirror.getOption('gutters').slice(); + if ($.inArray("CodeMirror-cellstate", gutters) < 0) { + gutters.push('CodeMirror-cellstate'); + cell.code_mirror.setOption('gutters', gutters); + cell.code_mirror.on("gutterClick", changeEvent); + + } + } + }; + + + /** + * Initialize all cells with new gutter + */ + var initGutter = function() { + var cells = Jupyter.notebook.get_cells(); + var ncells = cells.length; + for (var i = 0; i < ncells; i++) { + var cell = cells[i]; + if (cell instanceof codecell.CodeCell) { + var gutters = cell.code_mirror.getOption('gutters').slice(); + if ($.inArray("CodeMirror-cellstate", gutters) < 0) { + gutters.push('CodeMirror-cellstate'); + cell.code_mirror.setOption('gutters', gutters); + } + } + /** + * Restore hide/show status after reload + */ + if (cell.metadata.hasOwnProperty('hide_input') && cell.metadata.hide_input === true) + showCell(cell, 'i', false); + if (cell.metadata.hasOwnProperty('hide_output') && cell.metadata.hide_output === true) + showCell(cell, 'o', false); + if (cell.is_editable() === false) { + set_cell_state(cell, 'locked'); + } + cell.code_mirror.refresh(); + } + events.on('create.Cell', createCell); + }; + + /** + * Called from notebook after extension was loaded + * + */ + var load_extension = function() { + load_css('./main.css'); + load_css('./gutter.css'); /* set gutter width */ + requirejs(['./cellstate'], function() { + if (Jupyter.notebook._fully_loaded) { + initGutter(); + } else { + events.one('notebook_loaded.Notebook', initGutter); + } + }); + Jupyter.notebook.config.loaded.then(initialize); + }; + + return { + load_jupyter_extension: load_extension, + load_ipython_extension: load_extension + }; +}); diff --git a/.local/share/jupyter/nbextensions/runtools/runtools_lock.png b/.local/share/jupyter/nbextensions/runtools/runtools_lock.png new file mode 100644 index 0000000000000000000000000000000000000000..3b0a56161b2ca60b219517df85c2aeafa53a97f8 Binary files /dev/null and b/.local/share/jupyter/nbextensions/runtools/runtools_lock.png differ diff --git a/.local/share/jupyter/nbextensions/scratchpad/README.md b/.local/share/jupyter/nbextensions/scratchpad/README.md new file mode 100644 index 0000000000000000000000000000000000000000..069bd4858d50840d83b89567331a19f4737dad19 --- /dev/null +++ b/.local/share/jupyter/nbextensions/scratchpad/README.md @@ -0,0 +1,14 @@ +# Scratchpad notebook extension + +Adds a scratchpad cell to Jupyter notebook. +This is a cell in which you can execute code against the current kernel without modifying the notebook document. + +Scratchpad cells can be executed using `Shift-Enter` (other shortcuts are appled to the notebook document). The scratchpad can be toggled by clicking the icon in the bottom-right, or via the keyboard shortcut `Ctrl-B`. + +![demo](demo.gif) + + +## Credits + +This extension is a copy of the extension from MinRK here: +`git clone git://github.com/minrk/nbextension-scratchpad`. diff --git a/.local/share/jupyter/nbextensions/skill/README.md b/.local/share/jupyter/nbextensions/skill/README.md new file mode 100644 index 0000000000000000000000000000000000000000..3d6a5245fd2700ec8766a6a91797b32f0b66c3fc --- /dev/null +++ b/.local/share/jupyter/nbextensions/skill/README.md @@ -0,0 +1,15 @@ +# SKILL for Codemirror +This extension provides a *SKILL* mode for CodeMirror editor. + +The extension adds a MIME type `x-skill` and a mode `skill` that can be +used with CodeMirror. + +## About SKILL +From [Wikipedia](https://en.wikipedia.org/wiki/Cadence_SKILL): +SKILL is a Lisp dialect used as a scripting language and PCell (parameterized +cells) description language used in many EDA software suites by Cadence Design +Systems (e.g. Cadence Allegro and Cadence Virtuoso) + +## Notes +This extension was written to enhance the Virtuoso kernel for Jupyter +(https://github.com/benvarkey/JuVi). diff --git a/.triton/cache/6e97c2a1f7a095255f6dd5de1807841d/cuda_utils.so b/.triton/cache/6e97c2a1f7a095255f6dd5de1807841d/cuda_utils.so new file mode 100644 index 0000000000000000000000000000000000000000..aab526846f2f5236dbf127b071e8ce2910f5142f Binary files /dev/null and b/.triton/cache/6e97c2a1f7a095255f6dd5de1807841d/cuda_utils.so differ diff --git a/.triton/dump/0bb244fe116b8bad2e3be6ce32964a26/triton_.ptx b/.triton/dump/0bb244fe116b8bad2e3be6ce32964a26/triton_.ptx new file mode 100644 index 0000000000000000000000000000000000000000..951c180bc81b9d724963cb552280a7b7e51d1238 --- /dev/null +++ b/.triton/dump/0bb244fe116b8bad2e3be6ce32964a26/triton_.ptx @@ -0,0 +1,807 @@ +// +// Generated by LLVM NVPTX Back-End +// + +.version 8.2 +.target sm_89 +.address_size 64 + + // .globl triton__0d1d2d3d4d5d6d7d8de9de +.extern .shared .align 1 .b8 global_smem[]; +.global .align 1 .b8 _$_str[11] = {95, 95, 67, 85, 68, 65, 95, 70, 84, 90, 0}; + +.visible .entry triton__0d1d2d3d4d5d6d7d8de9de( + .param .u64 triton__0d1d2d3d4d5d6d7d8de9de_param_0, + .param .u64 triton__0d1d2d3d4d5d6d7d8de9de_param_1, + .param .u64 triton__0d1d2d3d4d5d6d7d8de9de_param_2, + .param .u64 triton__0d1d2d3d4d5d6d7d8de9de_param_3, + .param .u64 triton__0d1d2d3d4d5d6d7d8de9de_param_4, + .param .u64 triton__0d1d2d3d4d5d6d7d8de9de_param_5, + .param .u64 triton__0d1d2d3d4d5d6d7d8de9de_param_6, + .param .u64 triton__0d1d2d3d4d5d6d7d8de9de_param_7, + .param .u32 triton__0d1d2d3d4d5d6d7d8de9de_param_8, + .param .u32 triton__0d1d2d3d4d5d6d7d8de9de_param_9 +) +.maxntid 64, 1, 1 +{ + .reg .pred %p<33>; + .reg .b16 %rs<21>; + .reg .b32 %r<112>; + .reg .f32 %f<94>; + .reg .b64 %rd<20>; + .loc 1 18 0 +$L__func_begin0: + .loc 1 18 0 + + ld.param.u64 %rd9, [triton__0d1d2d3d4d5d6d7d8de9de_param_0]; + ld.param.u64 %rd10, [triton__0d1d2d3d4d5d6d7d8de9de_param_1]; +$L__tmp0: + .loc 1 26 26 + mov.u32 %r78, %tid.x; + and.b32 %r79, %r78, 31; + ld.param.u64 %rd11, [triton__0d1d2d3d4d5d6d7d8de9de_param_2]; + ld.param.u64 %rd12, [triton__0d1d2d3d4d5d6d7d8de9de_param_3]; + ld.param.u64 %rd13, [triton__0d1d2d3d4d5d6d7d8de9de_param_4]; + shl.b32 %r80, %r78, 2; + ld.param.u64 %rd14, [triton__0d1d2d3d4d5d6d7d8de9de_param_5]; + and.b32 %r81, %r80, 252; + ld.param.u64 %rd15, [triton__0d1d2d3d4d5d6d7d8de9de_param_6]; + ld.param.u64 %rd16, [triton__0d1d2d3d4d5d6d7d8de9de_param_7]; + .loc 1 23 28 + mov.u32 %r1, %ctaid.x; + .loc 1 30 40 + shl.b32 %r82, %r1, 8; + .loc 1 30 36 + or.b32 %r83, %r82, %r81; + .loc 1 30 30 + mul.wide.s32 %rd17, %r83, 4; + add.s64 %rd1, %rd9, %rd17; + mov.b32 %r6, 0; + mov.pred %p1, -1; + .loc 1 30 46 + mov.u32 %r2, 0x0; + mov.u32 %r3, 0x0; + mov.u32 %r4, 0x0; + mov.u32 %r5, 0x0; + @%p1 ld.global.v4.b32 { %r2, %r3, %r4, %r5 }, [ %rd1 + 0 ]; + @!%p1 mov.u32 %r2, %r6; + @!%p1 mov.u32 %r3, %r6; + @!%p1 mov.u32 %r4, %r6; + @!%p1 mov.u32 %r5, %r6; + mov.b32 %f1, %r2; + mov.b32 %f2, %r3; + mov.b32 %f3, %r4; + mov.b32 %f4, %r5; + .loc 1 31 30 + mul.wide.s32 %rd18, %r83, 2; + add.s64 %rd2, %rd10, %rd18; + .loc 1 31 46 + mov.u32 %r10, 0x0; + mov.u32 %r11, 0x0; + @%p1 ld.global.v2.b32 { %r10, %r11 }, [ %rd2 + 0 ]; + @!%p1 mov.u32 %r10, %r6; + @!%p1 mov.u32 %r11, %r6; + cvt.u16.u32 %rs1, %r10; + { .reg .b16 tmp; mov.b32 {tmp, %rs2}, %r10; } + cvt.u16.u32 %rs3, %r11; + { .reg .b16 tmp; mov.b32 {tmp, %rs4}, %r11; } + .loc 1 31 67 + cvt.f32.bf16 %r14, %rs1; + mov.b32 %f5, %r14; + cvt.f32.bf16 %r15, %rs2; + mov.b32 %f6, %r15; + cvt.f32.bf16 %r16, %rs3; + mov.b32 %f7, %r16; + cvt.f32.bf16 %r17, %rs4; + mov.b32 %f8, %r17; + .loc 1 32 30 + add.s64 %rd3, %rd11, %rd18; + .loc 1 32 46 + mov.u32 %r18, 0x0; + mov.u32 %r19, 0x0; + @%p1 ld.global.v2.b32 { %r18, %r19 }, [ %rd3 + 0 ]; + @!%p1 mov.u32 %r18, %r6; + @!%p1 mov.u32 %r19, %r6; + cvt.u16.u32 %rs5, %r18; + { .reg .b16 tmp; mov.b32 {tmp, %rs6}, %r18; } + cvt.u16.u32 %rs7, %r19; + { .reg .b16 tmp; mov.b32 {tmp, %rs8}, %r19; } + .loc 1 32 67 + cvt.f32.bf16 %r22, %rs5; + mov.b32 %f9, %r22; + cvt.f32.bf16 %r23, %rs6; + mov.b32 %f10, %r23; + cvt.f32.bf16 %r24, %rs7; + mov.b32 %f11, %r24; + cvt.f32.bf16 %r25, %rs8; + mov.b32 %f12, %r25; + .loc 1 33 30 + add.s64 %rd4, %rd12, %rd18; + .loc 1 33 46 + mov.u32 %r26, 0x0; + mov.u32 %r27, 0x0; + @%p1 ld.global.v2.b32 { %r26, %r27 }, [ %rd4 + 0 ]; + @!%p1 mov.u32 %r26, %r6; + @!%p1 mov.u32 %r27, %r6; + cvt.u16.u32 %rs9, %r26; + { .reg .b16 tmp; mov.b32 {tmp, %rs10}, %r26; } + cvt.u16.u32 %rs11, %r27; + { .reg .b16 tmp; mov.b32 {tmp, %rs12}, %r27; } + .loc 1 33 67 + cvt.f32.bf16 %r30, %rs9; + mov.b32 %f13, %r30; + cvt.f32.bf16 %r31, %rs10; + mov.b32 %f14, %r31; + cvt.f32.bf16 %r32, %rs11; + mov.b32 %f15, %r32; + cvt.f32.bf16 %r33, %rs12; + mov.b32 %f16, %r33; + .loc 1 34 31 + add.s64 %rd5, %rd13, %rd18; + .loc 1 34 47 + mov.u32 %r34, 0x0; + mov.u32 %r35, 0x0; + @%p1 ld.global.v2.b32 { %r34, %r35 }, [ %rd5 + 0 ]; + @!%p1 mov.u32 %r34, %r6; + @!%p1 mov.u32 %r35, %r6; + cvt.u16.u32 %rs13, %r34; + { .reg .b16 tmp; mov.b32 {tmp, %rs14}, %r34; } + cvt.u16.u32 %rs15, %r35; + { .reg .b16 tmp; mov.b32 {tmp, %rs16}, %r35; } + .loc 1 34 68 + cvt.f32.bf16 %r38, %rs13; + mov.b32 %f17, %r38; + cvt.f32.bf16 %r39, %rs14; + mov.b32 %f18, %r39; + cvt.f32.bf16 %r40, %rs15; + mov.b32 %f19, %r40; + cvt.f32.bf16 %r41, %rs16; + mov.b32 %f20, %r41; + .loc 1 35 31 + mul.wide.u32 %rd19, %r81, 4; + add.s64 %rd6, %rd14, %rd19; + .loc 1 35 36 + mov.u32 %r42, 0x0; + mov.u32 %r43, 0x0; + mov.u32 %r44, 0x0; + mov.u32 %r45, 0x0; + @%p1 ld.global.L1::evict_last.v4.b32 { %r42, %r43, %r44, %r45 }, [ %rd6 + 0 ]; + @!%p1 mov.u32 %r42, %r6; + @!%p1 mov.u32 %r43, %r6; + @!%p1 mov.u32 %r44, %r6; + @!%p1 mov.u32 %r45, %r6; + .loc 1 37 18 + add.f32 %f21, %f5, %f1; + add.f32 %f22, %f6, %f2; + add.f32 %f23, %f7, %f3; + .loc 1 39 18 + add.f32 %f24, %f21, %f9; + add.f32 %f25, %f22, %f10; + add.f32 %f26, %f23, %f11; + .loc 1 41 18 + add.f32 %f27, %f25, %f14; + add.f32 %f28, %f26, %f15; + .loc 1 43 19 + add.f32 %f29, %f27, %f18; + add.f32 %f30, %f28, %f19; + .loc 1 41 18 + add.f32 %f31, %f24, %f13; + add.f32 %f32, %f8, %f4; + .loc 1 43 19 + add.f32 %f33, %f32, %f12; + add.f32 %f34, %f31, %f17; +$L__tmp1: + .loc 2 233 15 + add.f32 %f35, %f34, %f29; + add.f32 %f36, %f33, %f16; + add.f32 %f37, %f35, %f30; + add.f32 %f38, %f36, %f20; + mov.b32 %r71, %f38; + add.f32 %f39, %f37, %f38; +$L__tmp2: + .loc 2 243 36 + mov.b32 %r84, %f39; + shfl.sync.bfly.b32 %r85, %r84, 16, 31, -1; + mov.b32 %f40, %r85; +$L__tmp3: + .loc 2 233 15 + add.f32 %f41, %f39, %f40; +$L__tmp4: + .loc 2 243 36 + mov.b32 %r86, %f41; + shfl.sync.bfly.b32 %r87, %r86, 8, 31, -1; + mov.b32 %f42, %r87; +$L__tmp5: + .loc 2 233 15 + add.f32 %f43, %f41, %f42; +$L__tmp6: + .loc 2 243 36 + mov.b32 %r88, %f43; + shfl.sync.bfly.b32 %r89, %r88, 4, 31, -1; + mov.b32 %f44, %r89; +$L__tmp7: + .loc 2 233 15 + add.f32 %f45, %f43, %f44; +$L__tmp8: + .loc 2 243 36 + mov.b32 %r90, %f45; + shfl.sync.bfly.b32 %r91, %r90, 2, 31, -1; + mov.b32 %f46, %r91; +$L__tmp9: + .loc 2 233 15 + add.f32 %f47, %f45, %f46; +$L__tmp10: + .loc 2 243 36 + mov.b32 %r92, %f47; + shfl.sync.bfly.b32 %r93, %r92, 1, 31, -1; + mov.b32 %f48, %r93; +$L__tmp11: + .loc 2 233 15 + add.f32 %f49, %f47, %f48; +$L__tmp12: + .loc 2 243 36 + setp.eq.s32 %p23, %r79, 0; + shr.u32 %r94, %r78, 3; + and.b32 %r95, %r94, 4; + mov.u32 %r96, global_smem; + add.s32 %r50, %r96, %r95; + mov.b32 %r51, %f49; + @%p23 st.shared.b32 [ %r50 + 0 ], %r51; + bar.sync 0; + setp.lt.s32 %p24, %r78, 2; + add.s32 %r53, %r96, %r80; + @%p24 ld.shared.b32 %r52, [ %r53 + 0 ]; + mov.b32 %f50, %r52; + shfl.sync.bfly.b32 %r97, %r52, 1, 31, -1; + mov.b32 %f51, %r97; +$L__tmp13: + .loc 2 233 15 + add.f32 %f52, %f50, %f51; +$L__tmp14: + .loc 2 243 36 + and.b32 %r98, %r78, 1; + setp.eq.b32 %p31, %r98, 1; + not.pred %p32, %p31; + and.pred %p25, %p24, %p32; + mov.b32 %r55, %f52; + @%p25 st.shared.b32 [ %r53 + 0 ], %r55; + bar.sync 0; + ld.shared.f32 %f53, [global_smem]; +$L__tmp15: + .loc 3 8 15 + add.f32 %f54, %f53, 0f00000000; +$L__tmp16: + .loc 1 51 20 + mov.b32 %r57, %f54; + mov.b32 %r58, 1132462080; + div.full.f32 %r56, %r57, %r58; + mov.b32 %f55, %r56; + .loc 1 52 20 + sub.f32 %f56, %f34, %f55; + sub.f32 %f57, %f29, %f55; + sub.f32 %f58, %f30, %f55; + sub.f32 %f59, %f38, %f55; + .loc 1 53 20 + mul.f32 %f60, %f57, %f57; +$L__tmp17: + .loc 2 243 36 + bar.sync 0; +$L__tmp18: + .loc 2 233 15 + fma.rn.f32 %f61, %f56, %f56, %f60; + fma.rn.f32 %f62, %f58, %f58, %f61; + fma.rn.f32 %f63, %f59, %f59, %f62; +$L__tmp19: + .loc 2 243 36 + mov.b32 %r99, %f63; + shfl.sync.bfly.b32 %r100, %r99, 16, 31, -1; + mov.b32 %f64, %r100; +$L__tmp20: + .loc 2 233 15 + add.f32 %f65, %f63, %f64; +$L__tmp21: + .loc 2 243 36 + mov.b32 %r101, %f65; + shfl.sync.bfly.b32 %r102, %r101, 8, 31, -1; + mov.b32 %f66, %r102; +$L__tmp22: + .loc 2 233 15 + add.f32 %f67, %f65, %f66; +$L__tmp23: + .loc 2 243 36 + mov.b32 %r103, %f67; + shfl.sync.bfly.b32 %r104, %r103, 4, 31, -1; + mov.b32 %f68, %r104; +$L__tmp24: + .loc 2 233 15 + add.f32 %f69, %f67, %f68; +$L__tmp25: + .loc 2 243 36 + mov.b32 %r105, %f69; + shfl.sync.bfly.b32 %r106, %r105, 2, 31, -1; + mov.b32 %f70, %r106; +$L__tmp26: + .loc 2 233 15 + add.f32 %f71, %f69, %f70; +$L__tmp27: + .loc 2 243 36 + mov.b32 %r107, %f71; + shfl.sync.bfly.b32 %r108, %r107, 1, 31, -1; + mov.b32 %f72, %r108; +$L__tmp28: + .loc 2 233 15 + add.f32 %f73, %f71, %f72; +$L__tmp29: + .loc 2 243 36 + mov.b32 %r60, %f73; + @%p23 st.shared.b32 [ %r50 + 0 ], %r60; + bar.sync 0; + @%p24 ld.shared.b32 %r61, [ %r53 + 0 ]; + mov.b32 %f74, %r61; + shfl.sync.bfly.b32 %r109, %r61, 1, 31, -1; + mov.b32 %f75, %r109; +$L__tmp30: + .loc 2 233 15 + add.f32 %f76, %f74, %f75; +$L__tmp31: + .loc 2 243 36 + mov.b32 %r64, %f76; + @%p25 st.shared.b32 [ %r53 + 0 ], %r64; + bar.sync 0; + ld.shared.f32 %f77, [global_smem]; +$L__tmp32: + .loc 3 8 15 + add.f32 %f78, %f77, 0f00000000; +$L__tmp33: + .loc 1 59 20 + mov.b32 %r66, %f78; + div.full.f32 %r65, %r66, %r58; + mov.b32 %f79, %r65; + .loc 1 61 20 + add.f32 %f80, %f79, 0f3727C5AC; + .loc 1 62 26 + rsqrt.approx.ftz.f32 %f81, %f80; + .loc 1 35 36 + mov.b32 %f82, %r45; + mov.b32 %f83, %r44; + mov.b32 %f84, %r43; + mov.b32 %f85, %r42; + .loc 1 63 20 + mul.f32 %f86, %f56, %f81; + mul.f32 %f87, %f57, %f81; + mul.f32 %f88, %f58, %f81; + mul.f32 %f89, %f59, %f81; + .loc 1 64 20 + mul.f32 %f90, %f86, %f85; + mul.f32 %f91, %f87, %f84; + mul.f32 %f92, %f88, %f83; + mul.f32 %f93, %f89, %f82; + .loc 1 66 25 + add.s64 %rd7, %rd15, %rd17; + .loc 1 66 48 + mov.b32 %r68, %f34; + mov.b32 %r69, %f29; + mov.b32 %r70, %f30; + @%p1 st.global.v4.b32 [ %rd7 + 0 ], { %r68, %r69, %r70, %r71 }; + .loc 1 67 25 + add.s64 %rd8, %rd16, %rd18; + .loc 1 67 48 + mov.b32 %r72, %f90; + cvt.rn.bf16.f32 %rs17, %r72; + mov.b32 %r73, %f91; + cvt.rn.bf16.f32 %rs18, %r73; + mov.b32 %r74, %f92; + cvt.rn.bf16.f32 %rs19, %r74; + mov.b32 %r75, %f93; + cvt.rn.bf16.f32 %rs20, %r75; + mov.b32 %r110, {%rs17, %rs18}; + mov.b32 %r111, {%rs19, %rs20}; + @%p1 st.global.v2.b32 [ %rd8 + 0 ], { %r110, %r111 }; + .loc 1 67 4 + ret; +$L__tmp34: +$L__func_end0: + +} + // .globl __nv_rsqrtf +.visible .func (.param .b32 func_retval0) __nv_rsqrtf( + .param .b32 __nv_rsqrtf_param_0 +) +{ + .reg .f32 %f<3>; +$L__func_begin1: + + ld.param.f32 %f1, [__nv_rsqrtf_param_0]; + rsqrt.approx.ftz.f32 %f2, %f1; + st.param.f32 [func_retval0+0], %f2; + ret; +$L__func_end1: + +} + .file 1 "/tmp/torchinductor_root/jb/cjbnqg5u4sj7a4xstjer3a6tdgnnigb2iymd27gcs6o7oduhxy2v.py" + .file 2 "/usr/local/lib/python3.10/dist-packages/triton/language/standard.py" + .file 3 "/usr/local/lib/python3.10/dist-packages/torch/_inductor/triton_helpers.py" + .section .debug_abbrev + { +.b8 1 +.b8 17 +.b8 1 +.b8 37 +.b8 8 +.b8 19 +.b8 5 +.b8 3 +.b8 8 +.b8 16 +.b8 6 +.b8 27 +.b8 8 +.b8 180 +.b8 66 +.b8 12 +.b8 17 +.b8 1 +.b8 18 +.b8 1 +.b8 0 +.b8 0 +.b8 2 +.b8 46 +.b8 0 +.b8 135 +.b8 64 +.b8 8 +.b8 3 +.b8 8 +.b8 58 +.b8 11 +.b8 59 +.b8 11 +.b8 63 +.b8 12 +.b8 32 +.b8 11 +.b8 0 +.b8 0 +.b8 3 +.b8 46 +.b8 1 +.b8 17 +.b8 1 +.b8 18 +.b8 1 +.b8 64 +.b8 10 +.b8 49 +.b8 19 +.b8 0 +.b8 0 +.b8 4 +.b8 29 +.b8 1 +.b8 49 +.b8 19 +.b8 17 +.b8 1 +.b8 18 +.b8 1 +.b8 88 +.b8 11 +.b8 89 +.b8 11 +.b8 87 +.b8 11 +.b8 0 +.b8 0 +.b8 5 +.b8 29 +.b8 0 +.b8 49 +.b8 19 +.b8 17 +.b8 1 +.b8 18 +.b8 1 +.b8 88 +.b8 11 +.b8 89 +.b8 11 +.b8 87 +.b8 11 +.b8 0 +.b8 0 +.b8 0 + } + .section .debug_info + { +.b32 407 +.b8 2 +.b8 0 +.b32 .debug_abbrev +.b8 8 +.b8 1 +.b8 116 +.b8 114 +.b8 105 +.b8 116 +.b8 111 +.b8 110 +.b8 0 +.b8 2 +.b8 0 +.b8 99 +.b8 106 +.b8 98 +.b8 110 +.b8 113 +.b8 103 +.b8 53 +.b8 117 +.b8 52 +.b8 115 +.b8 106 +.b8 55 +.b8 97 +.b8 52 +.b8 120 +.b8 115 +.b8 116 +.b8 106 +.b8 101 +.b8 114 +.b8 51 +.b8 97 +.b8 54 +.b8 116 +.b8 100 +.b8 103 +.b8 110 +.b8 110 +.b8 105 +.b8 103 +.b8 98 +.b8 50 +.b8 105 +.b8 121 +.b8 109 +.b8 100 +.b8 50 +.b8 55 +.b8 103 +.b8 99 +.b8 115 +.b8 54 +.b8 111 +.b8 55 +.b8 111 +.b8 100 +.b8 117 +.b8 104 +.b8 120 +.b8 121 +.b8 50 +.b8 118 +.b8 46 +.b8 112 +.b8 121 +.b8 0 +.b32 .debug_line +.b8 47 +.b8 116 +.b8 109 +.b8 112 +.b8 47 +.b8 116 +.b8 111 +.b8 114 +.b8 99 +.b8 104 +.b8 105 +.b8 110 +.b8 100 +.b8 117 +.b8 99 +.b8 116 +.b8 111 +.b8 114 +.b8 95 +.b8 114 +.b8 111 +.b8 111 +.b8 116 +.b8 47 +.b8 106 +.b8 98 +.b8 0 +.b8 1 +.b64 $L__func_begin0 +.b64 $L__func_end0 +.b8 2 +.b8 116 +.b8 114 +.b8 105 +.b8 116 +.b8 111 +.b8 110 +.b8 95 +.b8 95 +.b8 48 +.b8 100 +.b8 49 +.b8 100 +.b8 50 +.b8 100 +.b8 51 +.b8 100 +.b8 52 +.b8 100 +.b8 53 +.b8 100 +.b8 54 +.b8 100 +.b8 55 +.b8 100 +.b8 56 +.b8 100 +.b8 101 +.b8 57 +.b8 100 +.b8 101 +.b8 0 +.b8 116 +.b8 114 +.b8 105 +.b8 116 +.b8 111 +.b8 110 +.b8 95 +.b8 95 +.b8 48 +.b8 100 +.b8 49 +.b8 100 +.b8 50 +.b8 100 +.b8 51 +.b8 100 +.b8 52 +.b8 100 +.b8 53 +.b8 100 +.b8 54 +.b8 100 +.b8 55 +.b8 100 +.b8 56 +.b8 100 +.b8 101 +.b8 57 +.b8 100 +.b8 101 +.b8 0 +.b8 1 +.b8 18 +.b8 1 +.b8 1 +.b8 3 +.b64 $L__func_begin0 +.b64 $L__func_end0 +.b8 1 +.b8 156 +.b32 125 +.b8 4 +.b32 125 +.b64 $L__tmp1 +.b64 $L__tmp14 +.b8 2 +.b8 48 +.b8 59 +.b8 5 +.b32 125 +.b64 $L__tmp1 +.b64 $L__tmp14 +.b8 2 +.b8 243 +.b8 36 +.b8 0 +.b8 5 +.b32 125 +.b64 $L__tmp2 +.b64 $L__tmp15 +.b8 2 +.b8 48 +.b8 59 +.b8 5 +.b32 125 +.b64 $L__tmp15 +.b64 $L__tmp16 +.b8 3 +.b8 48 +.b8 45 +.b8 5 +.b32 125 +.b64 $L__tmp17 +.b64 $L__tmp32 +.b8 2 +.b8 56 +.b8 59 +.b8 4 +.b32 125 +.b64 $L__tmp18 +.b64 $L__tmp31 +.b8 2 +.b8 56 +.b8 59 +.b8 5 +.b32 125 +.b64 $L__tmp18 +.b64 $L__tmp31 +.b8 2 +.b8 243 +.b8 36 +.b8 0 +.b8 5 +.b32 125 +.b64 $L__tmp32 +.b64 $L__tmp33 +.b8 3 +.b8 56 +.b8 45 +.b8 0 +.b8 0 + } + .section .debug_pubnames + { +.b32 $L__pubNames_end0-$L__pubNames_start0 +$L__pubNames_start0: +.b8 2 +.b8 0 +.b32 .debug_info +.b32 411 +.b32 125 +.b8 116 +.b8 114 +.b8 105 +.b8 116 +.b8 111 +.b8 110 +.b8 95 +.b8 95 +.b8 48 +.b8 100 +.b8 49 +.b8 100 +.b8 50 +.b8 100 +.b8 51 +.b8 100 +.b8 52 +.b8 100 +.b8 53 +.b8 100 +.b8 54 +.b8 100 +.b8 55 +.b8 100 +.b8 56 +.b8 100 +.b8 101 +.b8 57 +.b8 100 +.b8 101 +.b8 0 +.b32 0 +$L__pubNames_end0: + } + .section .debug_pubtypes + { +.b32 $L__pubTypes_end0-$L__pubTypes_start0 +$L__pubTypes_start0: +.b8 2 +.b8 0 +.b32 .debug_info +.b32 411 +.b32 0 +$L__pubTypes_end0: + } + .section .debug_loc { } diff --git a/.triton/dump/127102ca642eeddf1a14ce3904d9fabf/triton_.ttir b/.triton/dump/127102ca642eeddf1a14ce3904d9fabf/triton_.ttir new file mode 100644 index 0000000000000000000000000000000000000000..c07a6e0066a7250123e6f73cc8f95e6913969c8c --- /dev/null +++ b/.triton/dump/127102ca642eeddf1a14ce3904d9fabf/triton_.ttir @@ -0,0 +1,53 @@ +module { + tt.func public @triton__0d1d2d3de4e(%arg0: !tt.ptr {tt.divisibility = 16 : i32}, %arg1: !tt.ptr {tt.divisibility = 16 : i32}, %arg2: !tt.ptr {tt.divisibility = 16 : i32}, %arg3: i32 {tt.divisibility = 16 : i32, tt.max_divisibility = 16 : i32}, %arg4: i32 {tt.max_divisibility = 8 : i32}) attributes {noinline = false} { + %cst = arith.constant dense<256> : tensor<32x1xi64> + %cst_0 = arith.constant dense<0> : tensor<32x1xi64> + %cst_1 = arith.constant dense<512> : tensor<32x1xi64> + %cst_2 = arith.constant dense : tensor<32x1xi1> + %cst_3 = arith.constant dense<256> : tensor<32x1xi32> + %cst_4 = arith.constant dense<131072> : tensor<1x128xi32> + %cst_5 = arith.constant dense<120> : tensor<1x128xi32> + %cst_6 = arith.constant dense<0.000000e+00> : tensor<32x128xf32> + %c32_i32 = arith.constant 32 : i32 + %0 = tt.get_program_id x : i32 + %1 = arith.muli %0, %c32_i32 : i32 + %2 = tt.make_range {end = 32 : i32, start = 0 : i32} : tensor<32xi32> + %3 = tt.expand_dims %2 {axis = 1 : i32} : (tensor<32xi32>) -> tensor<32x1xi32> + %4 = tt.splat %1 : (i32) -> tensor<32x1xi32> + %5 = arith.addi %4, %3 : tensor<32x1xi32> + %6 = tt.make_range {end = 128 : i32, start = 0 : i32} : tensor<128xi32> + %7 = tt.expand_dims %6 {axis = 0 : i32} : (tensor<128xi32>) -> tensor<1x128xi32> + %8 = arith.cmpi slt, %7, %cst_5 : tensor<1x128xi32> + %9 = arith.muli %7, %cst_4 : tensor<1x128xi32> + %10 = tt.broadcast %5 : (tensor<32x1xi32>) -> tensor<32x128xi32> + %11 = tt.broadcast %9 : (tensor<1x128xi32>) -> tensor<32x128xi32> + %12 = arith.addi %10, %11 : tensor<32x128xi32> + %13 = tt.splat %arg0 : (!tt.ptr) -> tensor<32x128x!tt.ptr> + %14 = tt.addptr %13, %12 : tensor<32x128x!tt.ptr>, tensor<32x128xi32> + %15 = tt.broadcast %8 : (tensor<1x128xi1>) -> tensor<32x128xi1> + %16 = tt.load %14, %15, %cst_6 {cache = 1 : i32, evict = 2 : i32, isVolatile = false} : tensor<32x128xf32> + %17 = arith.addf %16, %cst_6 : tensor<32x128xf32> + %18 = arith.select %15, %17, %cst_6 : tensor<32x128xi1>, tensor<32x128xf32> + %19 = "tt.reduce"(%18) <{axis = 1 : i32}> ({ + ^bb0(%arg5: f32, %arg6: f32): + %35 = arith.addf %arg5, %arg6 : f32 + tt.reduce.return %35 : f32 + }) : (tensor<32x128xf32>) -> tensor<32xf32> + %20 = tt.expand_dims %19 {axis = 1 : i32} : (tensor<32xf32>) -> tensor<32x1xf32> + %21 = arith.divsi %5, %cst_3 : tensor<32x1xi32> + %22 = arith.remsi %5, %cst_3 : tensor<32x1xi32> + %23 = tt.splat %arg1 : (!tt.ptr) -> tensor<32x1x!tt.ptr> + %24 = tt.addptr %23, %21 : tensor<32x1x!tt.ptr>, tensor<32x1xi32> + %25 = tt.load %24 {cache = 1 : i32, evict = 3 : i32, isVolatile = false} : tensor<32x1xi64> + %26 = arith.addi %25, %cst_1 : tensor<32x1xi64> + %27 = arith.cmpi slt, %25, %cst_0 : tensor<32x1xi64> + %28 = arith.select %27, %26, %25 : tensor<32x1xi1>, tensor<32x1xi64> + %29 = arith.muli %28, %cst : tensor<32x1xi64> + %30 = arith.extsi %22 : tensor<32x1xi32> to tensor<32x1xi64> + %31 = arith.addi %30, %29 : tensor<32x1xi64> + %32 = tt.splat %arg2 : (!tt.ptr) -> tensor<32x1x!tt.ptr> + %33 = tt.addptr %32, %31 : tensor<32x1x!tt.ptr>, tensor<32x1xi64> + %34 = "tt.atomic_rmw"(%33, %20, %cst_2) <{atomic_rmw_op = 5 : i32, scope = 1 : i32, sem = 4 : i32}> : (tensor<32x1x!tt.ptr>, tensor<32x1xf32>, tensor<32x1xi1>) -> tensor<32x1xf32> + tt.return + } +} diff --git a/.triton/dump/305a9479aab997a3a16bfe46bb303a50/triton_.cubin b/.triton/dump/305a9479aab997a3a16bfe46bb303a50/triton_.cubin new file mode 100644 index 0000000000000000000000000000000000000000..415705de6d799aaa6b3a36a31464475819ccfbef Binary files /dev/null and b/.triton/dump/305a9479aab997a3a16bfe46bb303a50/triton_.cubin differ diff --git a/.triton/dump/305a9479aab997a3a16bfe46bb303a50/triton_.ptx b/.triton/dump/305a9479aab997a3a16bfe46bb303a50/triton_.ptx new file mode 100644 index 0000000000000000000000000000000000000000..89418b826f1a3f9a68a6c06748b21298159f80c7 --- /dev/null +++ b/.triton/dump/305a9479aab997a3a16bfe46bb303a50/triton_.ptx @@ -0,0 +1,1041 @@ +// +// Generated by LLVM NVPTX Back-End +// + +.version 8.2 +.target sm_89 +.address_size 64 + + // .globl triton__0d1d2d3d4d5d6de7de +.extern .func __assertfail +( + .param .b64 __assertfail_param_0, + .param .b64 __assertfail_param_1, + .param .b32 __assertfail_param_2, + .param .b64 __assertfail_param_3, + .param .b64 __assertfail_param_4 +) +; +.global .align 1 .b8 assertFunc_1[25] = {95, 99, 97, 108, 108, 95, 119, 105, 116, 104, 95, 102, 114, 97, 109, 101, 115, 95, 114, 101, 109, 111, 118, 101, 100}; +.global .align 1 .b8 assertFile_1[38] = {60, 102, 114, 111, 122, 101, 110, 32, 105, 109, 112, 111, 114, 116, 108, 105, 98, 46, 95, 98, 111, 111, 116, 115, 116, 114, 97, 112, 95, 101, 120, 116, 101, 114, 110, 97, 108, 62}; +.global .align 1 .b8 assertMessage_1[39] = {105, 110, 100, 101, 120, 32, 111, 117, 116, 32, 111, 102, 32, 98, 111, 117, 110, 100, 115, 58, 32, 48, 32, 60, 61, 32, 116, 109, 112, 49, 54, 32, 60, 32, 53, 48, 50, 53, 55}; +.global .align 1 .b8 assertFunc_0[25] = {95, 99, 97, 108, 108, 95, 119, 105, 116, 104, 95, 102, 114, 97, 109, 101, 115, 95, 114, 101, 109, 111, 118, 101, 100}; +.global .align 1 .b8 assertFile_0[38] = {60, 102, 114, 111, 122, 101, 110, 32, 105, 109, 112, 111, 114, 116, 108, 105, 98, 46, 95, 98, 111, 111, 116, 115, 116, 114, 97, 112, 95, 101, 120, 116, 101, 114, 110, 97, 108, 62}; +.global .align 1 .b8 assertMessage_0[38] = {105, 110, 100, 101, 120, 32, 111, 117, 116, 32, 111, 102, 32, 98, 111, 117, 110, 100, 115, 58, 32, 48, 32, 60, 61, 32, 116, 109, 112, 51, 32, 60, 32, 53, 48, 50, 53, 55}; +.extern .shared .align 1 .b8 global_smem[]; +.global .align 1 .b8 _$_str[11] = {95, 95, 67, 85, 68, 65, 95, 70, 84, 90, 0}; + +.visible .entry triton__0d1d2d3d4d5d6de7de( + .param .u64 triton__0d1d2d3d4d5d6de7de_param_0, + .param .u64 triton__0d1d2d3d4d5d6de7de_param_1, + .param .u64 triton__0d1d2d3d4d5d6de7de_param_2, + .param .u64 triton__0d1d2d3d4d5d6de7de_param_3, + .param .u64 triton__0d1d2d3d4d5d6de7de_param_4, + .param .u64 triton__0d1d2d3d4d5d6de7de_param_5, + .param .u32 triton__0d1d2d3d4d5d6de7de_param_6, + .param .u32 triton__0d1d2d3d4d5d6de7de_param_7 +) +.maxntid 64, 1, 1 +{ + .reg .pred %p<59>; + .reg .b16 %rs<13>; + .reg .b32 %r<176>; + .reg .f32 %f<169>; + .reg .b64 %rd<58>; + .loc 1 18 0 +$L__func_begin0: + .loc 1 18 0 + + ld.param.u64 %rd8, [triton__0d1d2d3d4d5d6de7de_param_4]; + ld.param.u64 %rd7, [triton__0d1d2d3d4d5d6de7de_param_1]; + ld.param.u64 %rd22, [triton__0d1d2d3d4d5d6de7de_param_0]; +$L__tmp0: + .loc 1 24 33 + mov.u32 %r1, %tid.x; + and.b32 %r2, %r1, 31; + ld.param.u64 %rd23, [triton__0d1d2d3d4d5d6de7de_param_2]; + ld.param.u64 %rd24, [triton__0d1d2d3d4d5d6de7de_param_3]; + bfe.u32 %r3, %r1, 5, 1; + shl.b32 %r30, %r1, 2; + and.b32 %r4, %r30, 252; + .loc 1 21 28 + mov.u32 %r13, %ctaid.x; + .loc 1 26 30 + mul.wide.s32 %rd25, %r13, 8; + add.s64 %rd11, %rd22, %rd25; + mov.pred %p53, -1; + .loc 1 26 35 + mov.u64 %rd10, 0x0; + @%p53 ld.global.L1::evict_last.b64 { %rd10 }, [ %rd11 + 0 ]; + mov.u64 %rd12, 0x0; + @%p53 ld.global.L1::evict_last.b64 { %rd12 }, [ %rd11 + 0 ]; + mov.u64 %rd14, 0x0; + @%p53 ld.global.L1::evict_last.b64 { %rd14 }, [ %rd11 + 0 ]; + mov.u64 %rd16, 0x0; + @%p53 ld.global.L1::evict_last.b64 { %rd16 }, [ %rd11 + 0 ]; + mov.u64 %rd18, 0x0; + @%p53 ld.global.L1::evict_last.b64 { %rd18 }, [ %rd11 + 0 ]; + .loc 1 27 18 + shr.s32 %r31, %r13, 31; + shr.u32 %r32, %r31, 23; + add.s32 %r33, %r13, %r32; + and.b32 %r34, %r33, 16776704; + sub.s32 %r35, %r13, %r34; + .loc 1 35 44 + shl.b32 %r36, %r35, 8; + .loc 1 35 40 + or.b32 %r37, %r36, %r4; + .loc 1 35 34 + mul.wide.s32 %rd26, %r37, 4; + add.s64 %rd37, %rd23, %rd26; + mov.b32 %r151, 0; + .loc 1 35 50 + mov.u32 %r14, 0x0; + mov.u32 %r15, 0x0; + mov.u32 %r16, 0x0; + mov.u32 %r17, 0x0; + @%p53 ld.global.L1::evict_last.v4.b32 { %r14, %r15, %r16, %r17 }, [ %rd37 + 0 ]; + @!%p53 mov.u32 %r14, %r151; + @!%p53 mov.u32 %r15, %r151; + @!%p53 mov.u32 %r16, %r151; + @!%p53 mov.u32 %r17, %r151; + mov.b32 %f2, %r14; + mov.b32 %f1, %r15; + mov.b32 %f3, %r16; + mov.b32 %f4, %r17; + .loc 1 36 44 + shl.b32 %r38, %r13, 8; + .loc 1 36 40 + or.b32 %r39, %r38, %r4; + .loc 1 36 34 + mul.wide.s32 %rd27, %r39, 2; + add.s64 %rd38, %rd24, %rd27; + .loc 1 36 50 + mov.u32 %r22, 0x0; + mov.u32 %r23, 0x0; + @%p53 ld.global.L1::evict_last.v2.b32 { %r22, %r23 }, [ %rd38 + 0 ]; + @!%p53 mov.u32 %r22, %r151; + @!%p53 mov.u32 %r23, %r151; + cvt.u16.u32 %rs1, %r22; + { .reg .b16 tmp; mov.b32 {tmp, %rs2}, %r22; } + cvt.u16.u32 %rs3, %r23; + { .reg .b16 tmp; mov.b32 {tmp, %rs4}, %r23; } + .loc 1 36 101 + cvt.f32.bf16 %r26, %rs1; + mov.b32 %f5, %r26; + cvt.f32.bf16 %r27, %rs2; + mov.b32 %f6, %r27; + cvt.f32.bf16 %r28, %rs3; + mov.b32 %f7, %r28; + cvt.f32.bf16 %r29, %rs4; + mov.b32 %f8, %r29; + .loc 1 37 22 + add.s64 %rd28, %rd18, 50257; + .loc 1 38 22 + setp.lt.s64 %p14, %rd18, 0; + .loc 1 39 36 + selp.b64 %rd5, %rd28, %rd18, %p14; + .loc 1 40 40 + setp.lt.u64 %p15, %rd5, 50257; + mov.b32 %r175, 883; + mov.u64 %rd57, 1; + .loc 1 40 55 + @%p15 bra $L__BB0_2; + mov.u64 %rd29, assertMessage_0; + cvta.global.u64 %rd30, %rd29; + mov.u64 %rd31, assertFile_0; + cvta.global.u64 %rd32, %rd31; + mov.u64 %rd33, assertFunc_0; + cvta.global.u64 %rd34, %rd33; + { // callseq 0, 0 + .reg .b32 temp_param_reg; + .param .b64 param0; + st.param.b64 [param0+0], %rd30; + .param .b64 param1; + st.param.b64 [param1+0], %rd32; + .param .b32 param2; + st.param.b32 [param2+0], %r175; + .param .b64 param3; + st.param.b64 [param3+0], %rd34; + .param .b64 param4; + st.param.b64 [param4+0], %rd57; + call.uni + __assertfail, + ( + param0, + param1, + param2, + param3, + param4 + ); + } // callseq 0 +$L__BB0_2: + .loc 1 0 55 + ld.param.u64 %rd9, [triton__0d1d2d3d4d5d6de7de_param_5]; + cvt.s64.s32 %rd3, %r39; + .loc 1 38 22 + setp.lt.s64 %p44, %rd10, 0; + .loc 1 41 44 + shl.b64 %rd40, %rd10, 8; + add.s64 %rd41, %rd40, 12865792; + selp.b64 %rd42, %rd41, %rd40, %p44; + cvt.u64.u32 %rd43, %r4; + .loc 1 41 40 + or.b64 %rd44, %rd42, %rd43; + .loc 1 41 34 + shl.b64 %rd45, %rd44, 2; + add.s64 %rd54, %rd7, %rd45; + .loc 1 41 52 + mov.u32 %r41, 0x0; + mov.u32 %r42, 0x0; + mov.u32 %r43, 0x0; + mov.u32 %r44, 0x0; + @%p53 ld.global.L1::evict_last.v4.b32 { %r41, %r42, %r43, %r44 }, [ %rd54 + 0 ]; + @!%p53 mov.u32 %r41, %r151; + @!%p53 mov.u32 %r42, %r151; + @!%p53 mov.u32 %r43, %r151; + @!%p53 mov.u32 %r44, %r151; + mov.b32 %f15, %r43; + mov.b32 %f16, %r44; + .loc 1 42 22 + add.f32 %f17, %f3, %f15; + add.f32 %f18, %f4, %f16; + .loc 1 44 22 + add.f32 %f19, %f7, %f17; + add.f32 %f20, %f8, %f18; + .loc 1 41 52 + mov.b32 %f21, %r41; + mov.b32 %f22, %r42; + .loc 1 42 22 + add.f32 %f23, %f1, %f22; + add.f32 %f24, %f2, %f21; + .loc 1 44 22 + add.f32 %f25, %f5, %f24; + add.f32 %f26, %f6, %f23; +$L__tmp1: + .loc 2 98 22 + add.f32 %f27, %f26, 0f00000000; + add.f32 %f28, %f25, 0f00000000; + add.f32 %f29, %f19, 0f00000000; + add.f32 %f30, %f20, 0f00000000; + .loc 2 101 30 + sub.f32 %f31, %f25, %f28; + sub.f32 %f32, %f26, %f27; + sub.f32 %f33, %f19, %f29; + sub.f32 %f34, %f20, %f30; + .loc 2 101 13 + fma.rn.f32 %f35, %f25, %f31, 0f00000000; + fma.rn.f32 %f36, %f26, %f32, 0f00000000; + fma.rn.f32 %f37, %f19, %f33, 0f00000000; + fma.rn.f32 %f38, %f20, %f34, 0f00000000; +$L__tmp2: + .loc 2 108 21 + sub.f32 %f39, %f27, %f28; + mov.b32 %r50, 1065353216; + mov.b32 %r51, 1073741824; + .loc 2 110 60 + div.full.f32 %r49, %r50, %r51; + mov.b32 %f40, %r49; + .loc 2 112 17 + fma.rn.f32 %f41, %f40, %f39, %f28; + .loc 2 113 15 + add.f32 %f42, %f35, %f36; + .loc 2 113 30 + mul.f32 %f43, %f39, %f39; + .loc 2 113 22 + fma.rn.f32 %f44, %f40, %f43, %f42; + .loc 2 108 21 + sub.f32 %f45, %f29, %f41; + mov.b32 %r54, 1077936128; + .loc 2 110 60 + div.full.f32 %r52, %r50, %r54; + mov.b32 %f46, %r52; + .loc 2 112 17 + fma.rn.f32 %f47, %f46, %f45, %f41; + .loc 2 113 15 + add.f32 %f48, %f37, %f44; + .loc 2 113 30 + mul.f32 %f49, %f45, %f45; + .loc 2 113 38 + fma.rn.f32 %f50, %f45, %f45, %f49; + .loc 2 113 22 + fma.rn.f32 %f51, %f46, %f50, %f48; + .loc 2 108 21 + sub.f32 %f52, %f30, %f47; + mov.b32 %r57, 1082130432; + .loc 2 110 60 + div.full.f32 %r55, %r50, %r57; + mov.b32 %f53, %r55; + .loc 2 112 17 + fma.rn.f32 %f54, %f53, %f52, %f47; + .loc 2 113 15 + add.f32 %f55, %f38, %f51; + .loc 2 113 30 + mul.f32 %f56, %f52, %f52; + .loc 2 113 38 + mul.f32 %f57, %f56, 0f40400000; + .loc 2 113 22 + fma.rn.f32 %f58, %f53, %f57, %f55; +$L__tmp3: + .loc 2 120 46 + mov.b32 %r118, %f54; + shfl.sync.bfly.b32 %r119, %r118, 16, 31, -1; + mov.b32 %f59, %r119; + mov.b32 %r120, %f58; + shfl.sync.bfly.b32 %r121, %r120, 16, 31, -1; + mov.b32 %f60, %r121; + shfl.sync.bfly.b32 %r59, %r57, 16, 31, -1; + mov.b32 %f61, %r59; +$L__tmp4: + .loc 2 108 21 + sub.f32 %f62, %f59, %f54; + .loc 2 109 28 + add.f32 %f63, %f61, 0f40800000; + .loc 2 110 39 + setp.eq.f32 %p45, %f63, 0f00000000; + .loc 2 110 60 + mov.b32 %r60, %f63; + div.full.f32 %r58, %r59, %r60; + mov.b32 %f64, %r58; + .loc 2 110 49 + selp.f32 %f65, 0f00000000, %f64, %p45; + .loc 2 112 17 + fma.rn.f32 %f66, %f65, %f62, %f54; + .loc 2 113 15 + add.f32 %f67, %f58, %f60; + .loc 2 113 30 + mul.f32 %f68, %f62, %f62; + .loc 2 113 38 + mul.f32 %f69, %f68, 0f40800000; + .loc 2 113 22 + fma.rn.f32 %f70, %f65, %f69, %f67; +$L__tmp5: + .loc 2 120 46 + mov.b32 %r122, %f66; + shfl.sync.bfly.b32 %r123, %r122, 8, 31, -1; + mov.b32 %f71, %r123; + mov.b32 %r124, %f70; + shfl.sync.bfly.b32 %r125, %r124, 8, 31, -1; + mov.b32 %f72, %r125; + shfl.sync.bfly.b32 %r62, %r60, 8, 31, -1; + mov.b32 %f73, %r62; +$L__tmp6: + .loc 2 108 21 + sub.f32 %f74, %f71, %f66; + .loc 2 109 28 + add.f32 %f75, %f63, %f73; + .loc 2 110 39 + setp.eq.f32 %p46, %f75, 0f00000000; + .loc 2 110 60 + mov.b32 %r63, %f75; + div.full.f32 %r61, %r62, %r63; + mov.b32 %f76, %r61; + .loc 2 110 49 + selp.f32 %f77, 0f00000000, %f76, %p46; + .loc 2 112 17 + fma.rn.f32 %f78, %f77, %f74, %f66; + .loc 2 113 15 + add.f32 %f79, %f70, %f72; + .loc 2 113 30 + mul.f32 %f80, %f74, %f74; + .loc 2 113 38 + mul.f32 %f81, %f63, %f80; + .loc 2 113 22 + fma.rn.f32 %f82, %f77, %f81, %f79; +$L__tmp7: + .loc 2 120 46 + mov.b32 %r126, %f78; + shfl.sync.bfly.b32 %r127, %r126, 4, 31, -1; + mov.b32 %f83, %r127; + mov.b32 %r128, %f82; + shfl.sync.bfly.b32 %r129, %r128, 4, 31, -1; + mov.b32 %f84, %r129; + shfl.sync.bfly.b32 %r65, %r63, 4, 31, -1; + mov.b32 %f85, %r65; +$L__tmp8: + .loc 2 108 21 + sub.f32 %f86, %f83, %f78; + .loc 2 109 28 + add.f32 %f87, %f75, %f85; + .loc 2 110 39 + setp.eq.f32 %p47, %f87, 0f00000000; + .loc 2 110 60 + mov.b32 %r66, %f87; + div.full.f32 %r64, %r65, %r66; + mov.b32 %f88, %r64; + .loc 2 110 49 + selp.f32 %f89, 0f00000000, %f88, %p47; + .loc 2 112 17 + fma.rn.f32 %f90, %f89, %f86, %f78; + .loc 2 113 15 + add.f32 %f91, %f82, %f84; + .loc 2 113 30 + mul.f32 %f92, %f86, %f86; + .loc 2 113 38 + mul.f32 %f93, %f75, %f92; + .loc 2 113 22 + fma.rn.f32 %f94, %f89, %f93, %f91; +$L__tmp9: + .loc 2 120 46 + mov.b32 %r130, %f90; + shfl.sync.bfly.b32 %r131, %r130, 2, 31, -1; + mov.b32 %f95, %r131; + mov.b32 %r132, %f94; + shfl.sync.bfly.b32 %r133, %r132, 2, 31, -1; + mov.b32 %f96, %r133; + shfl.sync.bfly.b32 %r68, %r66, 2, 31, -1; + mov.b32 %f97, %r68; +$L__tmp10: + .loc 2 108 21 + sub.f32 %f98, %f95, %f90; + .loc 2 109 28 + add.f32 %f99, %f87, %f97; + .loc 2 110 39 + setp.eq.f32 %p48, %f99, 0f00000000; + .loc 2 110 60 + mov.b32 %r69, %f99; + div.full.f32 %r67, %r68, %r69; + mov.b32 %f100, %r67; + .loc 2 110 49 + selp.f32 %f101, 0f00000000, %f100, %p48; + .loc 2 112 17 + fma.rn.f32 %f102, %f101, %f98, %f90; + .loc 2 113 15 + add.f32 %f103, %f94, %f96; + .loc 2 113 30 + mul.f32 %f104, %f98, %f98; + .loc 2 113 38 + mul.f32 %f105, %f87, %f104; + .loc 2 113 22 + fma.rn.f32 %f106, %f101, %f105, %f103; +$L__tmp11: + .loc 2 120 46 + mov.b32 %r134, %f102; + shfl.sync.bfly.b32 %r135, %r134, 1, 31, -1; + mov.b32 %f107, %r135; + mov.b32 %r136, %f106; + shfl.sync.bfly.b32 %r137, %r136, 1, 31, -1; + mov.b32 %f108, %r137; + shfl.sync.bfly.b32 %r71, %r69, 1, 31, -1; + mov.b32 %f109, %r71; +$L__tmp12: + .loc 2 108 21 + sub.f32 %f110, %f107, %f102; + .loc 2 109 28 + add.f32 %f111, %f99, %f109; + .loc 2 110 39 + setp.eq.f32 %p49, %f111, 0f00000000; + .loc 2 110 60 + mov.b32 %r72, %f111; + div.full.f32 %r70, %r71, %r72; + mov.b32 %f112, %r70; + .loc 2 110 49 + selp.f32 %f113, 0f00000000, %f112, %p49; + .loc 2 112 17 + fma.rn.f32 %f114, %f113, %f110, %f102; + .loc 2 113 15 + add.f32 %f115, %f106, %f108; + .loc 2 113 30 + mul.f32 %f116, %f110, %f110; + .loc 2 113 38 + mul.f32 %f117, %f99, %f116; + .loc 2 113 22 + fma.rn.f32 %f118, %f113, %f117, %f115; +$L__tmp13: + .loc 2 120 46 + setp.eq.s32 %p21, %r2, 0; + shl.b32 %r138, %r3, 2; + mov.u32 %r139, global_smem; + add.s32 %r73, %r139, %r138; + mov.b32 %r74, %f114; + @%p21 st.shared.b32 [ %r73 + 0 ], %r74; + add.s32 %r140, %r139, 8; + add.s32 %r75, %r140, %r138; + mov.b32 %r76, %f118; + @%p21 st.shared.b32 [ %r75 + 0 ], %r76; + add.s32 %r141, %r139, 16; + add.s32 %r77, %r141, %r138; + @%p21 st.shared.b32 [ %r77 + 0 ], %r72; + bar.sync 0; + setp.lt.s32 %p24, %r1, 2; + add.s32 %r80, %r139, %r30; + @%p24 ld.shared.b32 %r79, [ %r80 + 0 ]; + mov.b32 %f119, %r79; + add.s32 %r82, %r140, %r30; + @%p24 ld.shared.b32 %r81, [ %r82 + 0 ]; + mov.b32 %f120, %r81; + add.s32 %r84, %r141, %r30; + @%p24 ld.shared.b32 %r83, [ %r84 + 0 ]; + mov.b32 %f121, %r83; + shfl.sync.bfly.b32 %r143, %r79, 1, 31, -1; + mov.b32 %f122, %r143; + shfl.sync.bfly.b32 %r144, %r81, 1, 31, -1; + mov.b32 %f123, %r144; + shfl.sync.bfly.b32 %r86, %r83, 1, 31, -1; + mov.b32 %f124, %r86; +$L__tmp14: + .loc 2 108 21 + sub.f32 %f125, %f122, %f119; + .loc 2 109 28 + add.f32 %f126, %f121, %f124; + .loc 2 110 39 + setp.eq.f32 %p50, %f126, 0f00000000; + .loc 2 110 60 + mov.b32 %r87, %f126; + div.full.f32 %r85, %r86, %r87; + mov.b32 %f127, %r85; + .loc 2 110 49 + selp.f32 %f128, 0f00000000, %f127, %p50; + .loc 2 112 17 + fma.rn.f32 %f129, %f125, %f128, %f119; + .loc 2 113 15 + add.f32 %f130, %f120, %f123; + .loc 2 113 30 + mul.f32 %f131, %f125, %f125; + .loc 2 113 38 + mul.f32 %f132, %f121, %f131; + .loc 2 113 22 + fma.rn.f32 %f133, %f132, %f128, %f130; +$L__tmp15: + .loc 2 120 46 + and.b32 %r145, %r1, 1; + setp.eq.b32 %p51, %r145, 1; + not.pred %p52, %p51; + and.pred %p27, %p24, %p52; + mov.b32 %r89, %f129; + @%p27 st.shared.b32 [ %r80 + 0 ], %r89; + mov.b32 %r91, %f133; + @%p27 st.shared.b32 [ %r82 + 0 ], %r91; + @%p27 st.shared.b32 [ %r84 + 0 ], %r87; + bar.sync 0; + ld.shared.f32 %f9, [global_smem]; + ld.shared.f32 %f10, [global_smem+8]; +$L__tmp16: + .loc 1 62 51 + mov.u32 %r94, 0x0; + mov.u32 %r95, 0x0; + mov.u32 %r96, 0x0; + mov.u32 %r97, 0x0; + @%p53 ld.global.L1::evict_last.v4.b32 { %r94, %r95, %r96, %r97 }, [ %rd37 + 0 ]; + @!%p53 mov.u32 %r94, %r151; + @!%p53 mov.u32 %r95, %r151; + @!%p53 mov.u32 %r96, %r151; + @!%p53 mov.u32 %r97, %r151; + .loc 1 63 51 + mov.u32 %r102, 0x0; + mov.u32 %r103, 0x0; + @%p53 ld.global.L1::evict_first.v2.b32 { %r102, %r103 }, [ %rd38 + 0 ]; + @!%p53 mov.u32 %r102, %r151; + @!%p53 mov.u32 %r103, %r151; + cvt.u16.u32 %rs5, %r102; + { .reg .b16 tmp; mov.b32 {tmp, %rs6}, %r102; } + cvt.u16.u32 %rs7, %r103; + { .reg .b16 tmp; mov.b32 {tmp, %rs8}, %r103; } + .loc 1 63 103 + cvt.f32.bf16 %r106, %rs5; + mov.b32 %f11, %r106; + cvt.f32.bf16 %r107, %rs6; + mov.b32 %f12, %r107; + cvt.f32.bf16 %r108, %rs7; + mov.b32 %f13, %r108; + cvt.f32.bf16 %r109, %rs8; + mov.b32 %f14, %r109; + .loc 1 64 35 + mul.wide.u32 %rd46, %r4, 4; + add.s64 %rd39, %rd8, %rd46; + .loc 1 64 40 + mov.u32 %r110, 0x0; + mov.u32 %r111, 0x0; + mov.u32 %r112, 0x0; + mov.u32 %r113, 0x0; + @%p53 ld.global.L1::evict_last.v4.b32 { %r110, %r111, %r112, %r113 }, [ %rd39 + 0 ]; + @!%p53 mov.u32 %r110, %r151; + @!%p53 mov.u32 %r111, %r151; + @!%p53 mov.u32 %r112, %r151; + @!%p53 mov.u32 %r113, %r151; + .loc 1 68 57 + @%p15 bra $L__BB0_4; + mov.u64 %rd47, assertMessage_1; + cvta.global.u64 %rd48, %rd47; + mov.u64 %rd49, assertFile_1; + cvta.global.u64 %rd50, %rd49; + mov.u64 %rd51, assertFunc_1; + cvta.global.u64 %rd52, %rd51; + { // callseq 1, 0 + .reg .b32 temp_param_reg; + .param .b64 param0; + st.param.b64 [param0+0], %rd48; + .param .b64 param1; + st.param.b64 [param1+0], %rd50; + .param .b32 param2; + st.param.b32 [param2+0], %r175; + .param .b64 param3; + st.param.b64 [param3+0], %rd52; + .param .b64 param4; + st.param.b64 [param4+0], %rd57; + call.uni + __assertfail, + ( + param0, + param1, + param2, + param3, + param4 + ); + } // callseq 1 +$L__BB0_4: + .loc 1 69 54 + mov.u32 %r147, 0x0; + mov.u32 %r148, 0x0; + mov.u32 %r149, 0x0; + mov.u32 %r150, 0x0; + @%p53 ld.global.L1::evict_first.v4.b32 { %r147, %r148, %r149, %r150 }, [ %rd54 + 0 ]; + @!%p53 mov.u32 %r147, %r151; + @!%p53 mov.u32 %r148, %r151; + @!%p53 mov.u32 %r149, %r151; + @!%p53 mov.u32 %r150, %r151; + .loc 1 75 24 + mov.b32 %r156, %f10; + mov.b32 %r157, 1132462080; + div.full.f32 %r155, %r156, %r157; + mov.b32 %f134, %r155; + .loc 1 77 24 + add.f32 %f135, %f134, 0f3727C5AC; + .loc 1 78 30 + rsqrt.approx.ftz.f32 %f136, %f135; + .loc 1 69 54 + mov.b32 %f137, %r150; + .loc 1 62 51 + mov.b32 %f138, %r97; + .loc 1 70 24 + add.f32 %f139, %f138, %f137; + .loc 1 72 24 + add.f32 %f140, %f14, %f139; + .loc 1 73 24 + sub.f32 %f141, %f140, %f9; + .loc 1 69 54 + mov.b32 %f142, %r149; + .loc 1 62 51 + mov.b32 %f143, %r96; + .loc 1 70 24 + add.f32 %f144, %f143, %f142; + .loc 1 72 24 + add.f32 %f145, %f13, %f144; + .loc 1 73 24 + sub.f32 %f146, %f145, %f9; + .loc 1 69 54 + mov.b32 %f147, %r148; + .loc 1 62 51 + mov.b32 %f148, %r95; + .loc 1 70 24 + add.f32 %f149, %f148, %f147; + .loc 1 72 24 + add.f32 %f150, %f12, %f149; + .loc 1 73 24 + sub.f32 %f151, %f150, %f9; + .loc 1 69 54 + mov.b32 %f152, %r147; + .loc 1 62 51 + mov.b32 %f153, %r94; + .loc 1 70 24 + add.f32 %f154, %f153, %f152; + .loc 1 72 24 + add.f32 %f155, %f11, %f154; + .loc 1 73 24 + sub.f32 %f156, %f155, %f9; + .loc 1 64 40 + mov.b32 %f157, %r110; + mov.b32 %f158, %r111; + mov.b32 %f159, %r112; + mov.b32 %f160, %r113; + .loc 1 79 24 + mul.f32 %f161, %f156, %f136; + mul.f32 %f162, %f151, %f136; + mul.f32 %f163, %f146, %f136; + mul.f32 %f164, %f141, %f136; + .loc 1 80 24 + mul.f32 %f165, %f161, %f157; + mul.f32 %f166, %f162, %f158; + mul.f32 %f167, %f163, %f159; + mul.f32 %f168, %f164, %f160; + .loc 1 82 29 + shl.b64 %rd56, %rd3, 1; + add.s64 %rd55, %rd9, %rd56; + .loc 1 82 52 + mov.b32 %r167, %f165; + cvt.rn.bf16.f32 %rs9, %r167; + mov.b32 %r168, %f166; + cvt.rn.bf16.f32 %rs10, %r168; + mov.b32 %r169, %f167; + cvt.rn.bf16.f32 %rs11, %r169; + mov.b32 %r170, %f168; + cvt.rn.bf16.f32 %rs12, %r170; + mov.b32 %r173, {%rs9, %rs10}; + mov.b32 %r174, {%rs11, %rs12}; + @%p53 st.global.v2.b32 [ %rd55 + 0 ], { %r173, %r174 }; + .loc 1 58 4 + ret; +$L__tmp17: +$L__func_end0: + +} + // .globl __nv_rsqrtf +.visible .func (.param .b32 func_retval0) __nv_rsqrtf( + .param .b32 __nv_rsqrtf_param_0 +) +{ + .reg .f32 %f<3>; +$L__func_begin1: + + ld.param.f32 %f1, [__nv_rsqrtf_param_0]; + rsqrt.approx.ftz.f32 %f2, %f1; + st.param.f32 [func_retval0+0], %f2; + ret; +$L__func_end1: + +} + .file 1 "/tmp/torchinductor_root/pn/cpn3lawg65lpi63gv6c6pn4oikhg6qva2h2qjdpxe6qj4lvttwez.py" + .file 2 "/usr/local/lib/python3.10/dist-packages/torch/_inductor/triton_helpers.py" + .section .debug_abbrev + { +.b8 1 +.b8 17 +.b8 1 +.b8 37 +.b8 8 +.b8 19 +.b8 5 +.b8 3 +.b8 8 +.b8 16 +.b8 6 +.b8 27 +.b8 8 +.b8 180 +.b8 66 +.b8 12 +.b8 17 +.b8 1 +.b8 18 +.b8 1 +.b8 0 +.b8 0 +.b8 2 +.b8 46 +.b8 0 +.b8 135 +.b8 64 +.b8 8 +.b8 3 +.b8 8 +.b8 58 +.b8 11 +.b8 59 +.b8 11 +.b8 63 +.b8 12 +.b8 32 +.b8 11 +.b8 0 +.b8 0 +.b8 3 +.b8 46 +.b8 1 +.b8 17 +.b8 1 +.b8 18 +.b8 1 +.b8 64 +.b8 10 +.b8 49 +.b8 19 +.b8 0 +.b8 0 +.b8 4 +.b8 29 +.b8 0 +.b8 49 +.b8 19 +.b8 17 +.b8 1 +.b8 18 +.b8 1 +.b8 88 +.b8 11 +.b8 89 +.b8 11 +.b8 87 +.b8 11 +.b8 0 +.b8 0 +.b8 5 +.b8 29 +.b8 1 +.b8 49 +.b8 19 +.b8 17 +.b8 1 +.b8 18 +.b8 1 +.b8 88 +.b8 11 +.b8 89 +.b8 11 +.b8 87 +.b8 11 +.b8 0 +.b8 0 +.b8 0 + } + .section .debug_info + { +.b32 302 +.b8 2 +.b8 0 +.b32 .debug_abbrev +.b8 8 +.b8 1 +.b8 116 +.b8 114 +.b8 105 +.b8 116 +.b8 111 +.b8 110 +.b8 0 +.b8 2 +.b8 0 +.b8 99 +.b8 112 +.b8 110 +.b8 51 +.b8 108 +.b8 97 +.b8 119 +.b8 103 +.b8 54 +.b8 53 +.b8 108 +.b8 112 +.b8 105 +.b8 54 +.b8 51 +.b8 103 +.b8 118 +.b8 54 +.b8 99 +.b8 54 +.b8 112 +.b8 110 +.b8 52 +.b8 111 +.b8 105 +.b8 107 +.b8 104 +.b8 103 +.b8 54 +.b8 113 +.b8 118 +.b8 97 +.b8 50 +.b8 104 +.b8 50 +.b8 113 +.b8 106 +.b8 100 +.b8 112 +.b8 120 +.b8 101 +.b8 54 +.b8 113 +.b8 106 +.b8 52 +.b8 108 +.b8 118 +.b8 116 +.b8 116 +.b8 119 +.b8 101 +.b8 122 +.b8 46 +.b8 112 +.b8 121 +.b8 0 +.b32 .debug_line +.b8 47 +.b8 116 +.b8 109 +.b8 112 +.b8 47 +.b8 116 +.b8 111 +.b8 114 +.b8 99 +.b8 104 +.b8 105 +.b8 110 +.b8 100 +.b8 117 +.b8 99 +.b8 116 +.b8 111 +.b8 114 +.b8 95 +.b8 114 +.b8 111 +.b8 111 +.b8 116 +.b8 47 +.b8 112 +.b8 110 +.b8 0 +.b8 1 +.b64 $L__func_begin0 +.b64 $L__func_end0 +.b8 2 +.b8 116 +.b8 114 +.b8 105 +.b8 116 +.b8 111 +.b8 110 +.b8 95 +.b8 95 +.b8 48 +.b8 100 +.b8 49 +.b8 100 +.b8 50 +.b8 100 +.b8 51 +.b8 100 +.b8 52 +.b8 100 +.b8 53 +.b8 100 +.b8 54 +.b8 100 +.b8 101 +.b8 55 +.b8 100 +.b8 101 +.b8 0 +.b8 116 +.b8 114 +.b8 105 +.b8 116 +.b8 111 +.b8 110 +.b8 95 +.b8 95 +.b8 48 +.b8 100 +.b8 49 +.b8 100 +.b8 50 +.b8 100 +.b8 51 +.b8 100 +.b8 52 +.b8 100 +.b8 53 +.b8 100 +.b8 54 +.b8 100 +.b8 101 +.b8 55 +.b8 100 +.b8 101 +.b8 0 +.b8 1 +.b8 18 +.b8 1 +.b8 1 +.b8 3 +.b64 $L__func_begin0 +.b64 $L__func_end0 +.b8 1 +.b8 156 +.b32 125 +.b8 4 +.b32 125 +.b64 $L__tmp1 +.b64 $L__tmp2 +.b8 2 +.b8 47 +.b8 41 +.b8 5 +.b32 125 +.b64 $L__tmp2 +.b64 $L__tmp15 +.b8 2 +.b8 53 +.b8 44 +.b8 4 +.b32 125 +.b64 $L__tmp2 +.b64 $L__tmp15 +.b8 2 +.b8 120 +.b8 46 +.b8 0 +.b8 4 +.b32 125 +.b64 $L__tmp3 +.b64 $L__tmp16 +.b8 2 +.b8 53 +.b8 44 +.b8 0 +.b8 0 + } + .section .debug_pubnames + { +.b32 $L__pubNames_end0-$L__pubNames_start0 +$L__pubNames_start0: +.b8 2 +.b8 0 +.b32 .debug_info +.b32 306 +.b32 125 +.b8 116 +.b8 114 +.b8 105 +.b8 116 +.b8 111 +.b8 110 +.b8 95 +.b8 95 +.b8 48 +.b8 100 +.b8 49 +.b8 100 +.b8 50 +.b8 100 +.b8 51 +.b8 100 +.b8 52 +.b8 100 +.b8 53 +.b8 100 +.b8 54 +.b8 100 +.b8 101 +.b8 55 +.b8 100 +.b8 101 +.b8 0 +.b32 0 +$L__pubNames_end0: + } + .section .debug_pubtypes + { +.b32 $L__pubTypes_end0-$L__pubTypes_start0 +$L__pubTypes_start0: +.b8 2 +.b8 0 +.b32 .debug_info +.b32 306 +.b32 0 +$L__pubTypes_end0: + } + .section .debug_loc { } diff --git a/.triton/dump/415aac87553b7d064f52694fa7254686/triton_.llir b/.triton/dump/415aac87553b7d064f52694fa7254686/triton_.llir new file mode 100644 index 0000000000000000000000000000000000000000..655a3cfb91ed8fd3cc5f6949beccae30b89e86e5 --- /dev/null +++ b/.triton/dump/415aac87553b7d064f52694fa7254686/triton_.llir @@ -0,0 +1,860 @@ +; ModuleID = 'LLVMDialectModule' +source_filename = "LLVMDialectModule" + +@.str = private unnamed_addr constant [11 x i8] c"__CUDA_FTZ\00", align 1 + +define void @triton__0d1d2de(ptr addrspace(1) %0, ptr addrspace(1) %1, i32 %2) local_unnamed_addr !dbg !7 { + %4 = tail call i32 @llvm.nvvm.read.ptx.sreg.tid.x(), !dbg !10 + %5 = shl i32 %4, 3, !dbg !10 + %6 = and i32 %5, 1016, !dbg !10 + %7 = tail call i32 asm "mov.u32 $0, %ctaid.x;", "=r"() #4, !dbg !11 + %8 = shl i32 %7, 10, !dbg !12 + %9 = or i32 %8, %6, !dbg !13 + %10 = sext i32 %9 to i64, !dbg !14 + %11 = getelementptr i16, ptr addrspace(1) %0, i64 %10, !dbg !14 + %12 = tail call { i32, i32, i32, i32 } asm sideeffect "mov.u32 $0, 0x0;\0A\09mov.u32 $1, 0x0;\0A\09mov.u32 $2, 0x0;\0A\09mov.u32 $3, 0x0;\0A\09@$5 ld.global.v4.b32 { $0, $1, $2, $3 }, [ $4 + 0 ];", "=r,=r,=r,=r,l,b"(ptr addrspace(1) %11, i1 true) #4, !dbg !15 + %13 = extractvalue { i32, i32, i32, i32 } %12, 0, !dbg !15 + %14 = extractvalue { i32, i32, i32, i32 } %12, 1, !dbg !15 + %15 = extractvalue { i32, i32, i32, i32 } %12, 2, !dbg !15 + %16 = extractvalue { i32, i32, i32, i32 } %12, 3, !dbg !15 + %17 = trunc i32 %13 to i16, !dbg !15 + %extelt.offset = lshr i32 %13, 16, !dbg !15 + %18 = trunc i32 %extelt.offset to i16, !dbg !15 + %19 = trunc i32 %14 to i16, !dbg !15 + %extelt.offset1 = lshr i32 %14, 16, !dbg !15 + %20 = trunc i32 %extelt.offset1 to i16, !dbg !15 + %21 = trunc i32 %15 to i16, !dbg !15 + %extelt.offset2 = lshr i32 %15, 16, !dbg !15 + %22 = trunc i32 %extelt.offset2 to i16, !dbg !15 + %23 = trunc i32 %16 to i16, !dbg !15 + %extelt.offset3 = lshr i32 %16, 16, !dbg !15 + %24 = trunc i32 %extelt.offset3 to i16, !dbg !15 + %25 = tail call float asm "cvt.f32.bf16 $0, $1;", "=r,h"(i16 %17) #4, !dbg !16 + %26 = tail call float asm "cvt.f32.bf16 $0, $1;", "=r,h"(i16 %18) #4, !dbg !16 + %27 = tail call float asm "cvt.f32.bf16 $0, $1;", "=r,h"(i16 %19) #4, !dbg !16 + %28 = tail call float asm "cvt.f32.bf16 $0, $1;", "=r,h"(i16 %20) #4, !dbg !16 + %29 = tail call float asm "cvt.f32.bf16 $0, $1;", "=r,h"(i16 %21) #4, !dbg !16 + %30 = tail call float asm "cvt.f32.bf16 $0, $1;", "=r,h"(i16 %22) #4, !dbg !16 + %31 = tail call float asm "cvt.f32.bf16 $0, $1;", "=r,h"(i16 %23) #4, !dbg !16 + %32 = tail call float asm "cvt.f32.bf16 $0, $1;", "=r,h"(i16 %24) #4, !dbg !16 + %33 = fmul float %25, 0x3FE6A09E60000000, !dbg !17 + %34 = fmul float %26, 0x3FE6A09E60000000, !dbg !17 + %35 = fmul float %27, 0x3FE6A09E60000000, !dbg !17 + %36 = fmul float %28, 0x3FE6A09E60000000, !dbg !17 + %37 = fmul float %29, 0x3FE6A09E60000000, !dbg !17 + %38 = fmul float %30, 0x3FE6A09E60000000, !dbg !17 + %39 = fmul float %31, 0x3FE6A09E60000000, !dbg !17 + %40 = fmul float %32, 0x3FE6A09E60000000, !dbg !17 + %41 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not.i = icmp eq i32 %41, 0, !dbg !18 + %42 = tail call float @llvm.nvvm.fabs.ftz.f(float %33) #4, !dbg !18 + %43 = tail call float @llvm.nvvm.fabs.f(float %33) #4, !dbg !18 + %.0.i = select i1 %.not.i, float %43, float %42, !dbg !18 + %44 = fcmp oge float %.0.i, 0x3FF00C1FC0000000, !dbg !18 + br i1 %44, label %__nv_fabsf.exit1.i, label %46, !dbg !18 + +__nv_fabsf.exit1.i: ; preds = %3 + %45 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not1.i = icmp eq i32 %45, 0, !dbg !18 + %.01.i = select i1 %.not1.i, float %43, float %42, !dbg !18 + br label %__internal_fmad.exit.i, !dbg !18 + +46: ; preds = %3 + %47 = fmul float %33, %33, !dbg !18 + br label %__internal_fmad.exit.i, !dbg !18 + +__internal_fmad.exit.i: ; preds = %46, %__nv_fabsf.exit1.i + %48 = phi float [ 0x3FE41B0840000000, %__nv_fabsf.exit1.i ], [ 0x3FC06EBA60000000, %46 ], !dbg !18 + %49 = phi float [ 0x3FED526FC0000000, %__nv_fabsf.exit1.i ], [ 0xBFD8127580000000, %46 ], !dbg !18 + %50 = phi float [ 0x3FC39F20C0000000, %__nv_fabsf.exit1.i ], [ 0x3FBCE315E0000000, %46 ], !dbg !18 + %51 = phi float [ 0xBFA1902C40000000, %__nv_fabsf.exit1.i ], [ 0xBF9B837CE0000000, %46 ], !dbg !18 + %52 = phi float [ 0x3F75908160000000, %__nv_fabsf.exit1.i ], [ 0x3F755ABD40000000, %46 ], !dbg !18 + %53 = phi float [ 0xBF3EAC1720000000, %__nv_fabsf.exit1.i ], [ 0xBF4AE9A400000000, %46 ], !dbg !18 + %54 = phi float [ 0x3EF1394780000000, %__nv_fabsf.exit1.i ], [ 0x3F163D2D40000000, %46 ], !dbg !18 + %55 = phi float [ %.01.i, %__nv_fabsf.exit1.i ], [ %47, %46 ], !dbg !18 + %56 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not2.i = icmp eq i32 %56, 0, !dbg !18 + %57 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %54, float %55, float %53) #4, !dbg !18 + %58 = tail call float @llvm.nvvm.fma.rn.f(float %54, float %55, float %53) #4, !dbg !18 + %.02.i = select i1 %.not2.i, float %58, float %57, !dbg !18 + %59 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not3.i = icmp eq i32 %59, 0, !dbg !18 + %60 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.02.i, float %55, float %52) #4, !dbg !18 + %61 = tail call float @llvm.nvvm.fma.rn.f(float %.02.i, float %55, float %52) #4, !dbg !18 + %.03.i = select i1 %.not3.i, float %61, float %60, !dbg !18 + %62 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not4.i = icmp eq i32 %62, 0, !dbg !18 + %63 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.03.i, float %55, float %51) #4, !dbg !18 + %64 = tail call float @llvm.nvvm.fma.rn.f(float %.03.i, float %55, float %51) #4, !dbg !18 + %.04.i = select i1 %.not4.i, float %64, float %63, !dbg !18 + %65 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not5.i = icmp eq i32 %65, 0, !dbg !18 + %66 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.04.i, float %55, float %50) #4, !dbg !18 + %67 = tail call float @llvm.nvvm.fma.rn.f(float %.04.i, float %55, float %50) #4, !dbg !18 + %.05.i = select i1 %.not5.i, float %67, float %66, !dbg !18 + %68 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not6.i = icmp eq i32 %68, 0, !dbg !18 + %69 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.05.i, float %55, float %49) #4, !dbg !18 + %70 = tail call float @llvm.nvvm.fma.rn.f(float %.05.i, float %55, float %49) #4, !dbg !18 + %.06.i = select i1 %.not6.i, float %70, float %69, !dbg !18 + %71 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not7.i = icmp eq i32 %71, 0, !dbg !18 + %72 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.06.i, float %55, float %48) #4, !dbg !18 + %73 = tail call float @llvm.nvvm.fma.rn.f(float %.06.i, float %55, float %48) #4, !dbg !18 + %.07.i = select i1 %.not7.i, float %73, float %72, !dbg !18 + %74 = fneg float %55, !dbg !18 + %75 = select i1 %44, float %74, float %33, !dbg !18 + %76 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not8.i = icmp eq i32 %76, 0, !dbg !18 + %77 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.07.i, float %75, float %75) #4, !dbg !18 + %78 = tail call float @llvm.nvvm.fma.rn.f(float %.07.i, float %75, float %75) #4, !dbg !18 + %.08.i = select i1 %.not8.i, float %78, float %77, !dbg !18 + br i1 %44, label %79, label %__nv_erff.exit, !dbg !18 + +79: ; preds = %__internal_fmad.exit.i + %80 = tail call float @llvm.nvvm.ex2.approx.ftz.f(float %.08.i) #4, !dbg !18 + %81 = fsub float 1.000000e+00, %80, !dbg !18 + %82 = bitcast float %81 to i32, !dbg !18 + %83 = bitcast float %33 to i32, !dbg !18 + %84 = and i32 %83, -2147483648, !dbg !18 + %85 = or i32 %84, %82, !dbg !18 + %86 = bitcast i32 %85 to float, !dbg !18 + br label %__nv_erff.exit, !dbg !18 + +__nv_erff.exit: ; preds = %__internal_fmad.exit.i, %79 + %r.0.i = phi float [ %86, %79 ], [ %.08.i, %__internal_fmad.exit.i ], !dbg !18 + %87 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not.i4 = icmp eq i32 %87, 0, !dbg !18 + %88 = tail call float @llvm.nvvm.fabs.ftz.f(float %34) #4, !dbg !18 + %89 = tail call float @llvm.nvvm.fabs.f(float %34) #4, !dbg !18 + %.0.i5 = select i1 %.not.i4, float %89, float %88, !dbg !18 + %90 = fcmp oge float %.0.i5, 0x3FF00C1FC0000000, !dbg !18 + br i1 %90, label %__nv_fabsf.exit1.i22, label %92, !dbg !18 + +__nv_fabsf.exit1.i22: ; preds = %__nv_erff.exit + %91 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not1.i23 = icmp eq i32 %91, 0, !dbg !18 + %.01.i24 = select i1 %.not1.i23, float %89, float %88, !dbg !18 + br label %__internal_fmad.exit.i6, !dbg !18 + +92: ; preds = %__nv_erff.exit + %93 = fmul float %34, %34, !dbg !18 + br label %__internal_fmad.exit.i6, !dbg !18 + +__internal_fmad.exit.i6: ; preds = %92, %__nv_fabsf.exit1.i22 + %94 = phi float [ 0x3FE41B0840000000, %__nv_fabsf.exit1.i22 ], [ 0x3FC06EBA60000000, %92 ], !dbg !18 + %95 = phi float [ 0x3FED526FC0000000, %__nv_fabsf.exit1.i22 ], [ 0xBFD8127580000000, %92 ], !dbg !18 + %96 = phi float [ 0x3FC39F20C0000000, %__nv_fabsf.exit1.i22 ], [ 0x3FBCE315E0000000, %92 ], !dbg !18 + %97 = phi float [ 0xBFA1902C40000000, %__nv_fabsf.exit1.i22 ], [ 0xBF9B837CE0000000, %92 ], !dbg !18 + %98 = phi float [ 0x3F75908160000000, %__nv_fabsf.exit1.i22 ], [ 0x3F755ABD40000000, %92 ], !dbg !18 + %99 = phi float [ 0xBF3EAC1720000000, %__nv_fabsf.exit1.i22 ], [ 0xBF4AE9A400000000, %92 ], !dbg !18 + %100 = phi float [ 0x3EF1394780000000, %__nv_fabsf.exit1.i22 ], [ 0x3F163D2D40000000, %92 ], !dbg !18 + %101 = phi float [ %.01.i24, %__nv_fabsf.exit1.i22 ], [ %93, %92 ], !dbg !18 + %102 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not2.i7 = icmp eq i32 %102, 0, !dbg !18 + %103 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %100, float %101, float %99) #4, !dbg !18 + %104 = tail call float @llvm.nvvm.fma.rn.f(float %100, float %101, float %99) #4, !dbg !18 + %.02.i8 = select i1 %.not2.i7, float %104, float %103, !dbg !18 + %105 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not3.i9 = icmp eq i32 %105, 0, !dbg !18 + %106 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.02.i8, float %101, float %98) #4, !dbg !18 + %107 = tail call float @llvm.nvvm.fma.rn.f(float %.02.i8, float %101, float %98) #4, !dbg !18 + %.03.i10 = select i1 %.not3.i9, float %107, float %106, !dbg !18 + %108 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not4.i11 = icmp eq i32 %108, 0, !dbg !18 + %109 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.03.i10, float %101, float %97) #4, !dbg !18 + %110 = tail call float @llvm.nvvm.fma.rn.f(float %.03.i10, float %101, float %97) #4, !dbg !18 + %.04.i12 = select i1 %.not4.i11, float %110, float %109, !dbg !18 + %111 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not5.i13 = icmp eq i32 %111, 0, !dbg !18 + %112 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.04.i12, float %101, float %96) #4, !dbg !18 + %113 = tail call float @llvm.nvvm.fma.rn.f(float %.04.i12, float %101, float %96) #4, !dbg !18 + %.05.i14 = select i1 %.not5.i13, float %113, float %112, !dbg !18 + %114 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not6.i15 = icmp eq i32 %114, 0, !dbg !18 + %115 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.05.i14, float %101, float %95) #4, !dbg !18 + %116 = tail call float @llvm.nvvm.fma.rn.f(float %.05.i14, float %101, float %95) #4, !dbg !18 + %.06.i16 = select i1 %.not6.i15, float %116, float %115, !dbg !18 + %117 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not7.i17 = icmp eq i32 %117, 0, !dbg !18 + %118 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.06.i16, float %101, float %94) #4, !dbg !18 + %119 = tail call float @llvm.nvvm.fma.rn.f(float %.06.i16, float %101, float %94) #4, !dbg !18 + %.07.i18 = select i1 %.not7.i17, float %119, float %118, !dbg !18 + %120 = fneg float %101, !dbg !18 + %121 = select i1 %90, float %120, float %34, !dbg !18 + %122 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not8.i19 = icmp eq i32 %122, 0, !dbg !18 + %123 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.07.i18, float %121, float %121) #4, !dbg !18 + %124 = tail call float @llvm.nvvm.fma.rn.f(float %.07.i18, float %121, float %121) #4, !dbg !18 + %.08.i20 = select i1 %.not8.i19, float %124, float %123, !dbg !18 + br i1 %90, label %125, label %__nv_erff.exit25, !dbg !18 + +125: ; preds = %__internal_fmad.exit.i6 + %126 = tail call float @llvm.nvvm.ex2.approx.ftz.f(float %.08.i20) #4, !dbg !18 + %127 = fsub float 1.000000e+00, %126, !dbg !18 + %128 = bitcast float %127 to i32, !dbg !18 + %129 = bitcast float %34 to i32, !dbg !18 + %130 = and i32 %129, -2147483648, !dbg !18 + %131 = or i32 %130, %128, !dbg !18 + %132 = bitcast i32 %131 to float, !dbg !18 + br label %__nv_erff.exit25, !dbg !18 + +__nv_erff.exit25: ; preds = %__internal_fmad.exit.i6, %125 + %r.0.i21 = phi float [ %132, %125 ], [ %.08.i20, %__internal_fmad.exit.i6 ], !dbg !18 + %133 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not.i26 = icmp eq i32 %133, 0, !dbg !18 + %134 = tail call float @llvm.nvvm.fabs.ftz.f(float %35) #4, !dbg !18 + %135 = tail call float @llvm.nvvm.fabs.f(float %35) #4, !dbg !18 + %.0.i27 = select i1 %.not.i26, float %135, float %134, !dbg !18 + %136 = fcmp oge float %.0.i27, 0x3FF00C1FC0000000, !dbg !18 + br i1 %136, label %__nv_fabsf.exit1.i44, label %138, !dbg !18 + +__nv_fabsf.exit1.i44: ; preds = %__nv_erff.exit25 + %137 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not1.i45 = icmp eq i32 %137, 0, !dbg !18 + %.01.i46 = select i1 %.not1.i45, float %135, float %134, !dbg !18 + br label %__internal_fmad.exit.i28, !dbg !18 + +138: ; preds = %__nv_erff.exit25 + %139 = fmul float %35, %35, !dbg !18 + br label %__internal_fmad.exit.i28, !dbg !18 + +__internal_fmad.exit.i28: ; preds = %138, %__nv_fabsf.exit1.i44 + %140 = phi float [ 0x3FE41B0840000000, %__nv_fabsf.exit1.i44 ], [ 0x3FC06EBA60000000, %138 ], !dbg !18 + %141 = phi float [ 0x3FED526FC0000000, %__nv_fabsf.exit1.i44 ], [ 0xBFD8127580000000, %138 ], !dbg !18 + %142 = phi float [ 0x3FC39F20C0000000, %__nv_fabsf.exit1.i44 ], [ 0x3FBCE315E0000000, %138 ], !dbg !18 + %143 = phi float [ 0xBFA1902C40000000, %__nv_fabsf.exit1.i44 ], [ 0xBF9B837CE0000000, %138 ], !dbg !18 + %144 = phi float [ 0x3F75908160000000, %__nv_fabsf.exit1.i44 ], [ 0x3F755ABD40000000, %138 ], !dbg !18 + %145 = phi float [ 0xBF3EAC1720000000, %__nv_fabsf.exit1.i44 ], [ 0xBF4AE9A400000000, %138 ], !dbg !18 + %146 = phi float [ 0x3EF1394780000000, %__nv_fabsf.exit1.i44 ], [ 0x3F163D2D40000000, %138 ], !dbg !18 + %147 = phi float [ %.01.i46, %__nv_fabsf.exit1.i44 ], [ %139, %138 ], !dbg !18 + %148 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not2.i29 = icmp eq i32 %148, 0, !dbg !18 + %149 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %146, float %147, float %145) #4, !dbg !18 + %150 = tail call float @llvm.nvvm.fma.rn.f(float %146, float %147, float %145) #4, !dbg !18 + %.02.i30 = select i1 %.not2.i29, float %150, float %149, !dbg !18 + %151 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not3.i31 = icmp eq i32 %151, 0, !dbg !18 + %152 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.02.i30, float %147, float %144) #4, !dbg !18 + %153 = tail call float @llvm.nvvm.fma.rn.f(float %.02.i30, float %147, float %144) #4, !dbg !18 + %.03.i32 = select i1 %.not3.i31, float %153, float %152, !dbg !18 + %154 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not4.i33 = icmp eq i32 %154, 0, !dbg !18 + %155 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.03.i32, float %147, float %143) #4, !dbg !18 + %156 = tail call float @llvm.nvvm.fma.rn.f(float %.03.i32, float %147, float %143) #4, !dbg !18 + %.04.i34 = select i1 %.not4.i33, float %156, float %155, !dbg !18 + %157 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not5.i35 = icmp eq i32 %157, 0, !dbg !18 + %158 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.04.i34, float %147, float %142) #4, !dbg !18 + %159 = tail call float @llvm.nvvm.fma.rn.f(float %.04.i34, float %147, float %142) #4, !dbg !18 + %.05.i36 = select i1 %.not5.i35, float %159, float %158, !dbg !18 + %160 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not6.i37 = icmp eq i32 %160, 0, !dbg !18 + %161 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.05.i36, float %147, float %141) #4, !dbg !18 + %162 = tail call float @llvm.nvvm.fma.rn.f(float %.05.i36, float %147, float %141) #4, !dbg !18 + %.06.i38 = select i1 %.not6.i37, float %162, float %161, !dbg !18 + %163 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not7.i39 = icmp eq i32 %163, 0, !dbg !18 + %164 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.06.i38, float %147, float %140) #4, !dbg !18 + %165 = tail call float @llvm.nvvm.fma.rn.f(float %.06.i38, float %147, float %140) #4, !dbg !18 + %.07.i40 = select i1 %.not7.i39, float %165, float %164, !dbg !18 + %166 = fneg float %147, !dbg !18 + %167 = select i1 %136, float %166, float %35, !dbg !18 + %168 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not8.i41 = icmp eq i32 %168, 0, !dbg !18 + %169 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.07.i40, float %167, float %167) #4, !dbg !18 + %170 = tail call float @llvm.nvvm.fma.rn.f(float %.07.i40, float %167, float %167) #4, !dbg !18 + %.08.i42 = select i1 %.not8.i41, float %170, float %169, !dbg !18 + br i1 %136, label %171, label %__nv_erff.exit47, !dbg !18 + +171: ; preds = %__internal_fmad.exit.i28 + %172 = tail call float @llvm.nvvm.ex2.approx.ftz.f(float %.08.i42) #4, !dbg !18 + %173 = fsub float 1.000000e+00, %172, !dbg !18 + %174 = bitcast float %173 to i32, !dbg !18 + %175 = bitcast float %35 to i32, !dbg !18 + %176 = and i32 %175, -2147483648, !dbg !18 + %177 = or i32 %176, %174, !dbg !18 + %178 = bitcast i32 %177 to float, !dbg !18 + br label %__nv_erff.exit47, !dbg !18 + +__nv_erff.exit47: ; preds = %__internal_fmad.exit.i28, %171 + %r.0.i43 = phi float [ %178, %171 ], [ %.08.i42, %__internal_fmad.exit.i28 ], !dbg !18 + %179 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not.i48 = icmp eq i32 %179, 0, !dbg !18 + %180 = tail call float @llvm.nvvm.fabs.ftz.f(float %36) #4, !dbg !18 + %181 = tail call float @llvm.nvvm.fabs.f(float %36) #4, !dbg !18 + %.0.i49 = select i1 %.not.i48, float %181, float %180, !dbg !18 + %182 = fcmp oge float %.0.i49, 0x3FF00C1FC0000000, !dbg !18 + br i1 %182, label %__nv_fabsf.exit1.i66, label %184, !dbg !18 + +__nv_fabsf.exit1.i66: ; preds = %__nv_erff.exit47 + %183 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not1.i67 = icmp eq i32 %183, 0, !dbg !18 + %.01.i68 = select i1 %.not1.i67, float %181, float %180, !dbg !18 + br label %__internal_fmad.exit.i50, !dbg !18 + +184: ; preds = %__nv_erff.exit47 + %185 = fmul float %36, %36, !dbg !18 + br label %__internal_fmad.exit.i50, !dbg !18 + +__internal_fmad.exit.i50: ; preds = %184, %__nv_fabsf.exit1.i66 + %186 = phi float [ 0x3FE41B0840000000, %__nv_fabsf.exit1.i66 ], [ 0x3FC06EBA60000000, %184 ], !dbg !18 + %187 = phi float [ 0x3FED526FC0000000, %__nv_fabsf.exit1.i66 ], [ 0xBFD8127580000000, %184 ], !dbg !18 + %188 = phi float [ 0x3FC39F20C0000000, %__nv_fabsf.exit1.i66 ], [ 0x3FBCE315E0000000, %184 ], !dbg !18 + %189 = phi float [ 0xBFA1902C40000000, %__nv_fabsf.exit1.i66 ], [ 0xBF9B837CE0000000, %184 ], !dbg !18 + %190 = phi float [ 0x3F75908160000000, %__nv_fabsf.exit1.i66 ], [ 0x3F755ABD40000000, %184 ], !dbg !18 + %191 = phi float [ 0xBF3EAC1720000000, %__nv_fabsf.exit1.i66 ], [ 0xBF4AE9A400000000, %184 ], !dbg !18 + %192 = phi float [ 0x3EF1394780000000, %__nv_fabsf.exit1.i66 ], [ 0x3F163D2D40000000, %184 ], !dbg !18 + %193 = phi float [ %.01.i68, %__nv_fabsf.exit1.i66 ], [ %185, %184 ], !dbg !18 + %194 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not2.i51 = icmp eq i32 %194, 0, !dbg !18 + %195 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %192, float %193, float %191) #4, !dbg !18 + %196 = tail call float @llvm.nvvm.fma.rn.f(float %192, float %193, float %191) #4, !dbg !18 + %.02.i52 = select i1 %.not2.i51, float %196, float %195, !dbg !18 + %197 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not3.i53 = icmp eq i32 %197, 0, !dbg !18 + %198 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.02.i52, float %193, float %190) #4, !dbg !18 + %199 = tail call float @llvm.nvvm.fma.rn.f(float %.02.i52, float %193, float %190) #4, !dbg !18 + %.03.i54 = select i1 %.not3.i53, float %199, float %198, !dbg !18 + %200 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not4.i55 = icmp eq i32 %200, 0, !dbg !18 + %201 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.03.i54, float %193, float %189) #4, !dbg !18 + %202 = tail call float @llvm.nvvm.fma.rn.f(float %.03.i54, float %193, float %189) #4, !dbg !18 + %.04.i56 = select i1 %.not4.i55, float %202, float %201, !dbg !18 + %203 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not5.i57 = icmp eq i32 %203, 0, !dbg !18 + %204 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.04.i56, float %193, float %188) #4, !dbg !18 + %205 = tail call float @llvm.nvvm.fma.rn.f(float %.04.i56, float %193, float %188) #4, !dbg !18 + %.05.i58 = select i1 %.not5.i57, float %205, float %204, !dbg !18 + %206 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not6.i59 = icmp eq i32 %206, 0, !dbg !18 + %207 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.05.i58, float %193, float %187) #4, !dbg !18 + %208 = tail call float @llvm.nvvm.fma.rn.f(float %.05.i58, float %193, float %187) #4, !dbg !18 + %.06.i60 = select i1 %.not6.i59, float %208, float %207, !dbg !18 + %209 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not7.i61 = icmp eq i32 %209, 0, !dbg !18 + %210 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.06.i60, float %193, float %186) #4, !dbg !18 + %211 = tail call float @llvm.nvvm.fma.rn.f(float %.06.i60, float %193, float %186) #4, !dbg !18 + %.07.i62 = select i1 %.not7.i61, float %211, float %210, !dbg !18 + %212 = fneg float %193, !dbg !18 + %213 = select i1 %182, float %212, float %36, !dbg !18 + %214 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not8.i63 = icmp eq i32 %214, 0, !dbg !18 + %215 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.07.i62, float %213, float %213) #4, !dbg !18 + %216 = tail call float @llvm.nvvm.fma.rn.f(float %.07.i62, float %213, float %213) #4, !dbg !18 + %.08.i64 = select i1 %.not8.i63, float %216, float %215, !dbg !18 + br i1 %182, label %217, label %__nv_erff.exit69, !dbg !18 + +217: ; preds = %__internal_fmad.exit.i50 + %218 = tail call float @llvm.nvvm.ex2.approx.ftz.f(float %.08.i64) #4, !dbg !18 + %219 = fsub float 1.000000e+00, %218, !dbg !18 + %220 = bitcast float %219 to i32, !dbg !18 + %221 = bitcast float %36 to i32, !dbg !18 + %222 = and i32 %221, -2147483648, !dbg !18 + %223 = or i32 %222, %220, !dbg !18 + %224 = bitcast i32 %223 to float, !dbg !18 + br label %__nv_erff.exit69, !dbg !18 + +__nv_erff.exit69: ; preds = %__internal_fmad.exit.i50, %217 + %r.0.i65 = phi float [ %224, %217 ], [ %.08.i64, %__internal_fmad.exit.i50 ], !dbg !18 + %225 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not.i70 = icmp eq i32 %225, 0, !dbg !18 + %226 = tail call float @llvm.nvvm.fabs.ftz.f(float %37) #4, !dbg !18 + %227 = tail call float @llvm.nvvm.fabs.f(float %37) #4, !dbg !18 + %.0.i71 = select i1 %.not.i70, float %227, float %226, !dbg !18 + %228 = fcmp oge float %.0.i71, 0x3FF00C1FC0000000, !dbg !18 + br i1 %228, label %__nv_fabsf.exit1.i88, label %230, !dbg !18 + +__nv_fabsf.exit1.i88: ; preds = %__nv_erff.exit69 + %229 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not1.i89 = icmp eq i32 %229, 0, !dbg !18 + %.01.i90 = select i1 %.not1.i89, float %227, float %226, !dbg !18 + br label %__internal_fmad.exit.i72, !dbg !18 + +230: ; preds = %__nv_erff.exit69 + %231 = fmul float %37, %37, !dbg !18 + br label %__internal_fmad.exit.i72, !dbg !18 + +__internal_fmad.exit.i72: ; preds = %230, %__nv_fabsf.exit1.i88 + %232 = phi float [ 0x3FE41B0840000000, %__nv_fabsf.exit1.i88 ], [ 0x3FC06EBA60000000, %230 ], !dbg !18 + %233 = phi float [ 0x3FED526FC0000000, %__nv_fabsf.exit1.i88 ], [ 0xBFD8127580000000, %230 ], !dbg !18 + %234 = phi float [ 0x3FC39F20C0000000, %__nv_fabsf.exit1.i88 ], [ 0x3FBCE315E0000000, %230 ], !dbg !18 + %235 = phi float [ 0xBFA1902C40000000, %__nv_fabsf.exit1.i88 ], [ 0xBF9B837CE0000000, %230 ], !dbg !18 + %236 = phi float [ 0x3F75908160000000, %__nv_fabsf.exit1.i88 ], [ 0x3F755ABD40000000, %230 ], !dbg !18 + %237 = phi float [ 0xBF3EAC1720000000, %__nv_fabsf.exit1.i88 ], [ 0xBF4AE9A400000000, %230 ], !dbg !18 + %238 = phi float [ 0x3EF1394780000000, %__nv_fabsf.exit1.i88 ], [ 0x3F163D2D40000000, %230 ], !dbg !18 + %239 = phi float [ %.01.i90, %__nv_fabsf.exit1.i88 ], [ %231, %230 ], !dbg !18 + %240 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not2.i73 = icmp eq i32 %240, 0, !dbg !18 + %241 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %238, float %239, float %237) #4, !dbg !18 + %242 = tail call float @llvm.nvvm.fma.rn.f(float %238, float %239, float %237) #4, !dbg !18 + %.02.i74 = select i1 %.not2.i73, float %242, float %241, !dbg !18 + %243 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not3.i75 = icmp eq i32 %243, 0, !dbg !18 + %244 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.02.i74, float %239, float %236) #4, !dbg !18 + %245 = tail call float @llvm.nvvm.fma.rn.f(float %.02.i74, float %239, float %236) #4, !dbg !18 + %.03.i76 = select i1 %.not3.i75, float %245, float %244, !dbg !18 + %246 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not4.i77 = icmp eq i32 %246, 0, !dbg !18 + %247 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.03.i76, float %239, float %235) #4, !dbg !18 + %248 = tail call float @llvm.nvvm.fma.rn.f(float %.03.i76, float %239, float %235) #4, !dbg !18 + %.04.i78 = select i1 %.not4.i77, float %248, float %247, !dbg !18 + %249 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not5.i79 = icmp eq i32 %249, 0, !dbg !18 + %250 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.04.i78, float %239, float %234) #4, !dbg !18 + %251 = tail call float @llvm.nvvm.fma.rn.f(float %.04.i78, float %239, float %234) #4, !dbg !18 + %.05.i80 = select i1 %.not5.i79, float %251, float %250, !dbg !18 + %252 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not6.i81 = icmp eq i32 %252, 0, !dbg !18 + %253 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.05.i80, float %239, float %233) #4, !dbg !18 + %254 = tail call float @llvm.nvvm.fma.rn.f(float %.05.i80, float %239, float %233) #4, !dbg !18 + %.06.i82 = select i1 %.not6.i81, float %254, float %253, !dbg !18 + %255 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not7.i83 = icmp eq i32 %255, 0, !dbg !18 + %256 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.06.i82, float %239, float %232) #4, !dbg !18 + %257 = tail call float @llvm.nvvm.fma.rn.f(float %.06.i82, float %239, float %232) #4, !dbg !18 + %.07.i84 = select i1 %.not7.i83, float %257, float %256, !dbg !18 + %258 = fneg float %239, !dbg !18 + %259 = select i1 %228, float %258, float %37, !dbg !18 + %260 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not8.i85 = icmp eq i32 %260, 0, !dbg !18 + %261 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.07.i84, float %259, float %259) #4, !dbg !18 + %262 = tail call float @llvm.nvvm.fma.rn.f(float %.07.i84, float %259, float %259) #4, !dbg !18 + %.08.i86 = select i1 %.not8.i85, float %262, float %261, !dbg !18 + br i1 %228, label %263, label %__nv_erff.exit91, !dbg !18 + +263: ; preds = %__internal_fmad.exit.i72 + %264 = tail call float @llvm.nvvm.ex2.approx.ftz.f(float %.08.i86) #4, !dbg !18 + %265 = fsub float 1.000000e+00, %264, !dbg !18 + %266 = bitcast float %265 to i32, !dbg !18 + %267 = bitcast float %37 to i32, !dbg !18 + %268 = and i32 %267, -2147483648, !dbg !18 + %269 = or i32 %268, %266, !dbg !18 + %270 = bitcast i32 %269 to float, !dbg !18 + br label %__nv_erff.exit91, !dbg !18 + +__nv_erff.exit91: ; preds = %__internal_fmad.exit.i72, %263 + %r.0.i87 = phi float [ %270, %263 ], [ %.08.i86, %__internal_fmad.exit.i72 ], !dbg !18 + %271 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not.i92 = icmp eq i32 %271, 0, !dbg !18 + %272 = tail call float @llvm.nvvm.fabs.ftz.f(float %38) #4, !dbg !18 + %273 = tail call float @llvm.nvvm.fabs.f(float %38) #4, !dbg !18 + %.0.i93 = select i1 %.not.i92, float %273, float %272, !dbg !18 + %274 = fcmp oge float %.0.i93, 0x3FF00C1FC0000000, !dbg !18 + br i1 %274, label %__nv_fabsf.exit1.i110, label %276, !dbg !18 + +__nv_fabsf.exit1.i110: ; preds = %__nv_erff.exit91 + %275 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not1.i111 = icmp eq i32 %275, 0, !dbg !18 + %.01.i112 = select i1 %.not1.i111, float %273, float %272, !dbg !18 + br label %__internal_fmad.exit.i94, !dbg !18 + +276: ; preds = %__nv_erff.exit91 + %277 = fmul float %38, %38, !dbg !18 + br label %__internal_fmad.exit.i94, !dbg !18 + +__internal_fmad.exit.i94: ; preds = %276, %__nv_fabsf.exit1.i110 + %278 = phi float [ 0x3FE41B0840000000, %__nv_fabsf.exit1.i110 ], [ 0x3FC06EBA60000000, %276 ], !dbg !18 + %279 = phi float [ 0x3FED526FC0000000, %__nv_fabsf.exit1.i110 ], [ 0xBFD8127580000000, %276 ], !dbg !18 + %280 = phi float [ 0x3FC39F20C0000000, %__nv_fabsf.exit1.i110 ], [ 0x3FBCE315E0000000, %276 ], !dbg !18 + %281 = phi float [ 0xBFA1902C40000000, %__nv_fabsf.exit1.i110 ], [ 0xBF9B837CE0000000, %276 ], !dbg !18 + %282 = phi float [ 0x3F75908160000000, %__nv_fabsf.exit1.i110 ], [ 0x3F755ABD40000000, %276 ], !dbg !18 + %283 = phi float [ 0xBF3EAC1720000000, %__nv_fabsf.exit1.i110 ], [ 0xBF4AE9A400000000, %276 ], !dbg !18 + %284 = phi float [ 0x3EF1394780000000, %__nv_fabsf.exit1.i110 ], [ 0x3F163D2D40000000, %276 ], !dbg !18 + %285 = phi float [ %.01.i112, %__nv_fabsf.exit1.i110 ], [ %277, %276 ], !dbg !18 + %286 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not2.i95 = icmp eq i32 %286, 0, !dbg !18 + %287 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %284, float %285, float %283) #4, !dbg !18 + %288 = tail call float @llvm.nvvm.fma.rn.f(float %284, float %285, float %283) #4, !dbg !18 + %.02.i96 = select i1 %.not2.i95, float %288, float %287, !dbg !18 + %289 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not3.i97 = icmp eq i32 %289, 0, !dbg !18 + %290 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.02.i96, float %285, float %282) #4, !dbg !18 + %291 = tail call float @llvm.nvvm.fma.rn.f(float %.02.i96, float %285, float %282) #4, !dbg !18 + %.03.i98 = select i1 %.not3.i97, float %291, float %290, !dbg !18 + %292 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not4.i99 = icmp eq i32 %292, 0, !dbg !18 + %293 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.03.i98, float %285, float %281) #4, !dbg !18 + %294 = tail call float @llvm.nvvm.fma.rn.f(float %.03.i98, float %285, float %281) #4, !dbg !18 + %.04.i100 = select i1 %.not4.i99, float %294, float %293, !dbg !18 + %295 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not5.i101 = icmp eq i32 %295, 0, !dbg !18 + %296 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.04.i100, float %285, float %280) #4, !dbg !18 + %297 = tail call float @llvm.nvvm.fma.rn.f(float %.04.i100, float %285, float %280) #4, !dbg !18 + %.05.i102 = select i1 %.not5.i101, float %297, float %296, !dbg !18 + %298 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not6.i103 = icmp eq i32 %298, 0, !dbg !18 + %299 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.05.i102, float %285, float %279) #4, !dbg !18 + %300 = tail call float @llvm.nvvm.fma.rn.f(float %.05.i102, float %285, float %279) #4, !dbg !18 + %.06.i104 = select i1 %.not6.i103, float %300, float %299, !dbg !18 + %301 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not7.i105 = icmp eq i32 %301, 0, !dbg !18 + %302 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.06.i104, float %285, float %278) #4, !dbg !18 + %303 = tail call float @llvm.nvvm.fma.rn.f(float %.06.i104, float %285, float %278) #4, !dbg !18 + %.07.i106 = select i1 %.not7.i105, float %303, float %302, !dbg !18 + %304 = fneg float %285, !dbg !18 + %305 = select i1 %274, float %304, float %38, !dbg !18 + %306 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not8.i107 = icmp eq i32 %306, 0, !dbg !18 + %307 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.07.i106, float %305, float %305) #4, !dbg !18 + %308 = tail call float @llvm.nvvm.fma.rn.f(float %.07.i106, float %305, float %305) #4, !dbg !18 + %.08.i108 = select i1 %.not8.i107, float %308, float %307, !dbg !18 + br i1 %274, label %309, label %__nv_erff.exit113, !dbg !18 + +309: ; preds = %__internal_fmad.exit.i94 + %310 = tail call float @llvm.nvvm.ex2.approx.ftz.f(float %.08.i108) #4, !dbg !18 + %311 = fsub float 1.000000e+00, %310, !dbg !18 + %312 = bitcast float %311 to i32, !dbg !18 + %313 = bitcast float %38 to i32, !dbg !18 + %314 = and i32 %313, -2147483648, !dbg !18 + %315 = or i32 %314, %312, !dbg !18 + %316 = bitcast i32 %315 to float, !dbg !18 + br label %__nv_erff.exit113, !dbg !18 + +__nv_erff.exit113: ; preds = %__internal_fmad.exit.i94, %309 + %r.0.i109 = phi float [ %316, %309 ], [ %.08.i108, %__internal_fmad.exit.i94 ], !dbg !18 + %317 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not.i114 = icmp eq i32 %317, 0, !dbg !18 + %318 = tail call float @llvm.nvvm.fabs.ftz.f(float %39) #4, !dbg !18 + %319 = tail call float @llvm.nvvm.fabs.f(float %39) #4, !dbg !18 + %.0.i115 = select i1 %.not.i114, float %319, float %318, !dbg !18 + %320 = fcmp oge float %.0.i115, 0x3FF00C1FC0000000, !dbg !18 + br i1 %320, label %__nv_fabsf.exit1.i132, label %322, !dbg !18 + +__nv_fabsf.exit1.i132: ; preds = %__nv_erff.exit113 + %321 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not1.i133 = icmp eq i32 %321, 0, !dbg !18 + %.01.i134 = select i1 %.not1.i133, float %319, float %318, !dbg !18 + br label %__internal_fmad.exit.i116, !dbg !18 + +322: ; preds = %__nv_erff.exit113 + %323 = fmul float %39, %39, !dbg !18 + br label %__internal_fmad.exit.i116, !dbg !18 + +__internal_fmad.exit.i116: ; preds = %322, %__nv_fabsf.exit1.i132 + %324 = phi float [ 0x3FE41B0840000000, %__nv_fabsf.exit1.i132 ], [ 0x3FC06EBA60000000, %322 ], !dbg !18 + %325 = phi float [ 0x3FED526FC0000000, %__nv_fabsf.exit1.i132 ], [ 0xBFD8127580000000, %322 ], !dbg !18 + %326 = phi float [ 0x3FC39F20C0000000, %__nv_fabsf.exit1.i132 ], [ 0x3FBCE315E0000000, %322 ], !dbg !18 + %327 = phi float [ 0xBFA1902C40000000, %__nv_fabsf.exit1.i132 ], [ 0xBF9B837CE0000000, %322 ], !dbg !18 + %328 = phi float [ 0x3F75908160000000, %__nv_fabsf.exit1.i132 ], [ 0x3F755ABD40000000, %322 ], !dbg !18 + %329 = phi float [ 0xBF3EAC1720000000, %__nv_fabsf.exit1.i132 ], [ 0xBF4AE9A400000000, %322 ], !dbg !18 + %330 = phi float [ 0x3EF1394780000000, %__nv_fabsf.exit1.i132 ], [ 0x3F163D2D40000000, %322 ], !dbg !18 + %331 = phi float [ %.01.i134, %__nv_fabsf.exit1.i132 ], [ %323, %322 ], !dbg !18 + %332 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not2.i117 = icmp eq i32 %332, 0, !dbg !18 + %333 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %330, float %331, float %329) #4, !dbg !18 + %334 = tail call float @llvm.nvvm.fma.rn.f(float %330, float %331, float %329) #4, !dbg !18 + %.02.i118 = select i1 %.not2.i117, float %334, float %333, !dbg !18 + %335 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not3.i119 = icmp eq i32 %335, 0, !dbg !18 + %336 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.02.i118, float %331, float %328) #4, !dbg !18 + %337 = tail call float @llvm.nvvm.fma.rn.f(float %.02.i118, float %331, float %328) #4, !dbg !18 + %.03.i120 = select i1 %.not3.i119, float %337, float %336, !dbg !18 + %338 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not4.i121 = icmp eq i32 %338, 0, !dbg !18 + %339 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.03.i120, float %331, float %327) #4, !dbg !18 + %340 = tail call float @llvm.nvvm.fma.rn.f(float %.03.i120, float %331, float %327) #4, !dbg !18 + %.04.i122 = select i1 %.not4.i121, float %340, float %339, !dbg !18 + %341 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not5.i123 = icmp eq i32 %341, 0, !dbg !18 + %342 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.04.i122, float %331, float %326) #4, !dbg !18 + %343 = tail call float @llvm.nvvm.fma.rn.f(float %.04.i122, float %331, float %326) #4, !dbg !18 + %.05.i124 = select i1 %.not5.i123, float %343, float %342, !dbg !18 + %344 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not6.i125 = icmp eq i32 %344, 0, !dbg !18 + %345 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.05.i124, float %331, float %325) #4, !dbg !18 + %346 = tail call float @llvm.nvvm.fma.rn.f(float %.05.i124, float %331, float %325) #4, !dbg !18 + %.06.i126 = select i1 %.not6.i125, float %346, float %345, !dbg !18 + %347 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not7.i127 = icmp eq i32 %347, 0, !dbg !18 + %348 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.06.i126, float %331, float %324) #4, !dbg !18 + %349 = tail call float @llvm.nvvm.fma.rn.f(float %.06.i126, float %331, float %324) #4, !dbg !18 + %.07.i128 = select i1 %.not7.i127, float %349, float %348, !dbg !18 + %350 = fneg float %331, !dbg !18 + %351 = select i1 %320, float %350, float %39, !dbg !18 + %352 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not8.i129 = icmp eq i32 %352, 0, !dbg !18 + %353 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.07.i128, float %351, float %351) #4, !dbg !18 + %354 = tail call float @llvm.nvvm.fma.rn.f(float %.07.i128, float %351, float %351) #4, !dbg !18 + %.08.i130 = select i1 %.not8.i129, float %354, float %353, !dbg !18 + br i1 %320, label %355, label %__nv_erff.exit135, !dbg !18 + +355: ; preds = %__internal_fmad.exit.i116 + %356 = tail call float @llvm.nvvm.ex2.approx.ftz.f(float %.08.i130) #4, !dbg !18 + %357 = fsub float 1.000000e+00, %356, !dbg !18 + %358 = bitcast float %357 to i32, !dbg !18 + %359 = bitcast float %39 to i32, !dbg !18 + %360 = and i32 %359, -2147483648, !dbg !18 + %361 = or i32 %360, %358, !dbg !18 + %362 = bitcast i32 %361 to float, !dbg !18 + br label %__nv_erff.exit135, !dbg !18 + +__nv_erff.exit135: ; preds = %__internal_fmad.exit.i116, %355 + %r.0.i131 = phi float [ %362, %355 ], [ %.08.i130, %__internal_fmad.exit.i116 ], !dbg !18 + %363 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not.i136 = icmp eq i32 %363, 0, !dbg !18 + %364 = tail call float @llvm.nvvm.fabs.ftz.f(float %40) #4, !dbg !18 + %365 = tail call float @llvm.nvvm.fabs.f(float %40) #4, !dbg !18 + %.0.i137 = select i1 %.not.i136, float %365, float %364, !dbg !18 + %366 = fcmp oge float %.0.i137, 0x3FF00C1FC0000000, !dbg !18 + br i1 %366, label %__nv_fabsf.exit1.i154, label %368, !dbg !18 + +__nv_fabsf.exit1.i154: ; preds = %__nv_erff.exit135 + %367 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not1.i155 = icmp eq i32 %367, 0, !dbg !18 + %.01.i156 = select i1 %.not1.i155, float %365, float %364, !dbg !18 + br label %__internal_fmad.exit.i138, !dbg !18 + +368: ; preds = %__nv_erff.exit135 + %369 = fmul float %40, %40, !dbg !18 + br label %__internal_fmad.exit.i138, !dbg !18 + +__internal_fmad.exit.i138: ; preds = %368, %__nv_fabsf.exit1.i154 + %370 = phi float [ 0x3FE41B0840000000, %__nv_fabsf.exit1.i154 ], [ 0x3FC06EBA60000000, %368 ], !dbg !18 + %371 = phi float [ 0x3FED526FC0000000, %__nv_fabsf.exit1.i154 ], [ 0xBFD8127580000000, %368 ], !dbg !18 + %372 = phi float [ 0x3FC39F20C0000000, %__nv_fabsf.exit1.i154 ], [ 0x3FBCE315E0000000, %368 ], !dbg !18 + %373 = phi float [ 0xBFA1902C40000000, %__nv_fabsf.exit1.i154 ], [ 0xBF9B837CE0000000, %368 ], !dbg !18 + %374 = phi float [ 0x3F75908160000000, %__nv_fabsf.exit1.i154 ], [ 0x3F755ABD40000000, %368 ], !dbg !18 + %375 = phi float [ 0xBF3EAC1720000000, %__nv_fabsf.exit1.i154 ], [ 0xBF4AE9A400000000, %368 ], !dbg !18 + %376 = phi float [ 0x3EF1394780000000, %__nv_fabsf.exit1.i154 ], [ 0x3F163D2D40000000, %368 ], !dbg !18 + %377 = phi float [ %.01.i156, %__nv_fabsf.exit1.i154 ], [ %369, %368 ], !dbg !18 + %378 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not2.i139 = icmp eq i32 %378, 0, !dbg !18 + %379 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %376, float %377, float %375) #4, !dbg !18 + %380 = tail call float @llvm.nvvm.fma.rn.f(float %376, float %377, float %375) #4, !dbg !18 + %.02.i140 = select i1 %.not2.i139, float %380, float %379, !dbg !18 + %381 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not3.i141 = icmp eq i32 %381, 0, !dbg !18 + %382 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.02.i140, float %377, float %374) #4, !dbg !18 + %383 = tail call float @llvm.nvvm.fma.rn.f(float %.02.i140, float %377, float %374) #4, !dbg !18 + %.03.i142 = select i1 %.not3.i141, float %383, float %382, !dbg !18 + %384 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not4.i143 = icmp eq i32 %384, 0, !dbg !18 + %385 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.03.i142, float %377, float %373) #4, !dbg !18 + %386 = tail call float @llvm.nvvm.fma.rn.f(float %.03.i142, float %377, float %373) #4, !dbg !18 + %.04.i144 = select i1 %.not4.i143, float %386, float %385, !dbg !18 + %387 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not5.i145 = icmp eq i32 %387, 0, !dbg !18 + %388 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.04.i144, float %377, float %372) #4, !dbg !18 + %389 = tail call float @llvm.nvvm.fma.rn.f(float %.04.i144, float %377, float %372) #4, !dbg !18 + %.05.i146 = select i1 %.not5.i145, float %389, float %388, !dbg !18 + %390 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not6.i147 = icmp eq i32 %390, 0, !dbg !18 + %391 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.05.i146, float %377, float %371) #4, !dbg !18 + %392 = tail call float @llvm.nvvm.fma.rn.f(float %.05.i146, float %377, float %371) #4, !dbg !18 + %.06.i148 = select i1 %.not6.i147, float %392, float %391, !dbg !18 + %393 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not7.i149 = icmp eq i32 %393, 0, !dbg !18 + %394 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.06.i148, float %377, float %370) #4, !dbg !18 + %395 = tail call float @llvm.nvvm.fma.rn.f(float %.06.i148, float %377, float %370) #4, !dbg !18 + %.07.i150 = select i1 %.not7.i149, float %395, float %394, !dbg !18 + %396 = fneg float %377, !dbg !18 + %397 = select i1 %366, float %396, float %40, !dbg !18 + %398 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !18 + %.not8.i151 = icmp eq i32 %398, 0, !dbg !18 + %399 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.07.i150, float %397, float %397) #4, !dbg !18 + %400 = tail call float @llvm.nvvm.fma.rn.f(float %.07.i150, float %397, float %397) #4, !dbg !18 + %.08.i152 = select i1 %.not8.i151, float %400, float %399, !dbg !18 + br i1 %366, label %401, label %__nv_erff.exit157, !dbg !18 + +401: ; preds = %__internal_fmad.exit.i138 + %402 = tail call float @llvm.nvvm.ex2.approx.ftz.f(float %.08.i152) #4, !dbg !18 + %403 = fsub float 1.000000e+00, %402, !dbg !18 + %404 = bitcast float %403 to i32, !dbg !18 + %405 = bitcast float %40 to i32, !dbg !18 + %406 = and i32 %405, -2147483648, !dbg !18 + %407 = or i32 %406, %404, !dbg !18 + %408 = bitcast i32 %407 to float, !dbg !18 + br label %__nv_erff.exit157, !dbg !18 + +__nv_erff.exit157: ; preds = %__internal_fmad.exit.i138, %401 + %r.0.i153 = phi float [ %408, %401 ], [ %.08.i152, %__internal_fmad.exit.i138 ], !dbg !18 + %409 = fmul float %32, 5.000000e-01, !dbg !19 + %410 = fmul float %31, 5.000000e-01, !dbg !19 + %411 = fmul float %30, 5.000000e-01, !dbg !19 + %412 = fmul float %29, 5.000000e-01, !dbg !19 + %413 = fmul float %28, 5.000000e-01, !dbg !19 + %414 = fmul float %27, 5.000000e-01, !dbg !19 + %415 = fmul float %26, 5.000000e-01, !dbg !19 + %416 = fmul float %25, 5.000000e-01, !dbg !19 + %417 = fadd float %r.0.i, 1.000000e+00, !dbg !20 + %418 = fadd float %r.0.i21, 1.000000e+00, !dbg !20 + %419 = fadd float %r.0.i43, 1.000000e+00, !dbg !20 + %420 = fadd float %r.0.i65, 1.000000e+00, !dbg !20 + %421 = fadd float %r.0.i87, 1.000000e+00, !dbg !20 + %422 = fadd float %r.0.i109, 1.000000e+00, !dbg !20 + %423 = fadd float %r.0.i131, 1.000000e+00, !dbg !20 + %424 = fadd float %r.0.i153, 1.000000e+00, !dbg !20 + %425 = fmul float %416, %417, !dbg !21 + %426 = fmul float %415, %418, !dbg !21 + %427 = fmul float %414, %419, !dbg !21 + %428 = fmul float %413, %420, !dbg !21 + %429 = fmul float %412, %421, !dbg !21 + %430 = fmul float %411, %422, !dbg !21 + %431 = fmul float %410, %423, !dbg !21 + %432 = fmul float %409, %424, !dbg !21 + %433 = getelementptr i16, ptr addrspace(1) %1, i64 %10, !dbg !22 + %434 = tail call i16 asm "cvt.rn.bf16.f32 $0, $1;", "=h,r"(float %425) #4, !dbg !23 + %435 = tail call i16 asm "cvt.rn.bf16.f32 $0, $1;", "=h,r"(float %426) #4, !dbg !23 + %436 = tail call i16 asm "cvt.rn.bf16.f32 $0, $1;", "=h,r"(float %427) #4, !dbg !23 + %437 = tail call i16 asm "cvt.rn.bf16.f32 $0, $1;", "=h,r"(float %428) #4, !dbg !23 + %438 = tail call i16 asm "cvt.rn.bf16.f32 $0, $1;", "=h,r"(float %429) #4, !dbg !23 + %439 = tail call i16 asm "cvt.rn.bf16.f32 $0, $1;", "=h,r"(float %430) #4, !dbg !23 + %440 = tail call i16 asm "cvt.rn.bf16.f32 $0, $1;", "=h,r"(float %431) #4, !dbg !23 + %441 = tail call i16 asm "cvt.rn.bf16.f32 $0, $1;", "=h,r"(float %432) #4, !dbg !23 + %442 = insertelement <2 x i16> undef, i16 %434, i64 0, !dbg !23 + %443 = insertelement <2 x i16> %442, i16 %435, i64 1, !dbg !23 + %444 = bitcast <2 x i16> %443 to i32, !dbg !23 + %445 = insertelement <2 x i16> undef, i16 %436, i64 0, !dbg !23 + %446 = insertelement <2 x i16> %445, i16 %437, i64 1, !dbg !23 + %447 = bitcast <2 x i16> %446 to i32, !dbg !23 + %448 = insertelement <2 x i16> undef, i16 %438, i64 0, !dbg !23 + %449 = insertelement <2 x i16> %448, i16 %439, i64 1, !dbg !23 + %450 = bitcast <2 x i16> %449 to i32, !dbg !23 + %451 = insertelement <2 x i16> undef, i16 %440, i64 0, !dbg !23 + %452 = insertelement <2 x i16> %451, i16 %441, i64 1, !dbg !23 + %453 = bitcast <2 x i16> %452 to i32, !dbg !23 + tail call void asm sideeffect "@$5 st.global.v4.b32 [ $4 + 0 ], { $0, $1, $2, $3 };", "r,r,r,r,l,b"(i32 %444, i32 %447, i32 %450, i32 %453, ptr addrspace(1) %433, i1 true) #4, !dbg !23 + ret void, !dbg !24 +} + +; Function Attrs: mustprogress nocallback nofree nosync nounwind speculatable willreturn memory(none) +declare noundef i32 @llvm.nvvm.read.ptx.sreg.tid.x() #0 + +; Function Attrs: alwaysinline nounwind +define float @__nv_erff(float %a) local_unnamed_addr #1 { +__nv_fabsf.exit: + %0 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4 + %.not = icmp eq i32 %0, 0 + %1 = tail call float @llvm.nvvm.fabs.ftz.f(float %a) #4 + %2 = tail call float @llvm.nvvm.fabs.f(float %a) #4 + %.0 = select i1 %.not, float %2, float %1 + %3 = fcmp oge float %.0, 0x3FF00C1FC0000000 + br i1 %3, label %__nv_fabsf.exit1, label %5 + +__nv_fabsf.exit1: ; preds = %__nv_fabsf.exit + %4 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4 + %.not1 = icmp eq i32 %4, 0 + %.01 = select i1 %.not1, float %2, float %1 + br label %__internal_fmad.exit + +5: ; preds = %__nv_fabsf.exit + %6 = fmul float %a, %a + br label %__internal_fmad.exit + +__internal_fmad.exit: ; preds = %5, %__nv_fabsf.exit1 + %7 = phi float [ 0x3FE41B0840000000, %__nv_fabsf.exit1 ], [ 0x3FC06EBA60000000, %5 ] + %8 = phi float [ 0x3FED526FC0000000, %__nv_fabsf.exit1 ], [ 0xBFD8127580000000, %5 ] + %9 = phi float [ 0x3FC39F20C0000000, %__nv_fabsf.exit1 ], [ 0x3FBCE315E0000000, %5 ] + %10 = phi float [ 0xBFA1902C40000000, %__nv_fabsf.exit1 ], [ 0xBF9B837CE0000000, %5 ] + %11 = phi float [ 0x3F75908160000000, %__nv_fabsf.exit1 ], [ 0x3F755ABD40000000, %5 ] + %12 = phi float [ 0xBF3EAC1720000000, %__nv_fabsf.exit1 ], [ 0xBF4AE9A400000000, %5 ] + %13 = phi float [ 0x3EF1394780000000, %__nv_fabsf.exit1 ], [ 0x3F163D2D40000000, %5 ] + %14 = phi float [ %.01, %__nv_fabsf.exit1 ], [ %6, %5 ] + %15 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4 + %.not2 = icmp eq i32 %15, 0 + %16 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %13, float %14, float %12) #4 + %17 = tail call float @llvm.nvvm.fma.rn.f(float %13, float %14, float %12) #4 + %.02 = select i1 %.not2, float %17, float %16 + %18 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4 + %.not3 = icmp eq i32 %18, 0 + %19 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.02, float %14, float %11) #4 + %20 = tail call float @llvm.nvvm.fma.rn.f(float %.02, float %14, float %11) #4 + %.03 = select i1 %.not3, float %20, float %19 + %21 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4 + %.not4 = icmp eq i32 %21, 0 + %22 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.03, float %14, float %10) #4 + %23 = tail call float @llvm.nvvm.fma.rn.f(float %.03, float %14, float %10) #4 + %.04 = select i1 %.not4, float %23, float %22 + %24 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4 + %.not5 = icmp eq i32 %24, 0 + %25 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.04, float %14, float %9) #4 + %26 = tail call float @llvm.nvvm.fma.rn.f(float %.04, float %14, float %9) #4 + %.05 = select i1 %.not5, float %26, float %25 + %27 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4 + %.not6 = icmp eq i32 %27, 0 + %28 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.05, float %14, float %8) #4 + %29 = tail call float @llvm.nvvm.fma.rn.f(float %.05, float %14, float %8) #4 + %.06 = select i1 %.not6, float %29, float %28 + %30 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4 + %.not7 = icmp eq i32 %30, 0 + %31 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.06, float %14, float %7) #4 + %32 = tail call float @llvm.nvvm.fma.rn.f(float %.06, float %14, float %7) #4 + %.07 = select i1 %.not7, float %32, float %31 + %33 = fneg float %14 + %34 = select i1 %3, float %33, float %a + %35 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4 + %.not8 = icmp eq i32 %35, 0 + %36 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.07, float %34, float %34) #4 + %37 = tail call float @llvm.nvvm.fma.rn.f(float %.07, float %34, float %34) #4 + %.08 = select i1 %.not8, float %37, float %36 + br i1 %3, label %38, label %46 + +38: ; preds = %__internal_fmad.exit + %39 = tail call float @llvm.nvvm.ex2.approx.ftz.f(float %.08) #4 + %40 = fsub float 1.000000e+00, %39 + %41 = bitcast float %40 to i32 + %42 = bitcast float %a to i32 + %43 = and i32 %42, -2147483648 + %44 = or i32 %43, %41 + %45 = bitcast i32 %44 to float + br label %46 + +46: ; preds = %38, %__internal_fmad.exit + %r.0 = phi float [ %45, %38 ], [ %.08, %__internal_fmad.exit ] + ret float %r.0 +} + +declare i32 @__nvvm_reflect(ptr) local_unnamed_addr #2 + +; Function Attrs: mustprogress nocallback nofree nosync nounwind speculatable willreturn memory(none) +declare float @llvm.nvvm.fabs.ftz.f(float) #0 + +; Function Attrs: mustprogress nocallback nofree nosync nounwind speculatable willreturn memory(none) +declare float @llvm.nvvm.fabs.f(float) #0 + +; Function Attrs: mustprogress nocallback nofree nosync nounwind speculatable willreturn memory(none) +declare float @llvm.nvvm.fma.rn.ftz.f(float, float, float) #0 + +; Function Attrs: mustprogress nocallback nofree nosync nounwind speculatable willreturn memory(none) +declare float @llvm.nvvm.fma.rn.f(float, float, float) #0 + +; Function Attrs: mustprogress nocallback nofree nosync nounwind willreturn memory(none) +declare float @llvm.nvvm.ex2.approx.ftz.f(float) #3 + +attributes #0 = { mustprogress nocallback nofree nosync nounwind speculatable willreturn memory(none) } +attributes #1 = { alwaysinline nounwind "disable-tail-calls"="false" "frame-pointer"="all" "less-precise-fpmad"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" } +attributes #2 = { "disable-tail-calls"="false" "frame-pointer"="all" "less-precise-fpmad"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" } +attributes #3 = { mustprogress nocallback nofree nosync nounwind willreturn memory(none) } +attributes #4 = { nounwind } + +!llvm.module.flags = !{!0, !1} +!llvm.dbg.cu = !{!2} +!nvvm.annotations = !{!4, !5, !5, !4} +!llvm.ident = !{!6} + +!0 = !{i32 2, !"Debug Info Version", i32 3} +!1 = !{i32 4, !"nvvm-reflect-ftz", i32 1} +!2 = distinct !DICompileUnit(language: DW_LANG_C, file: !3, producer: "triton", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug) +!3 = !DIFile(filename: "cjfoqo3nutni5cmtw4brla34cz45fusadehkxfkr2fie2qgo7vwt.py", directory: "/tmp/torchinductor_root/jf") +!4 = !{ptr @triton__0d1d2de, !"kernel", i32 1} +!5 = !{ptr @triton__0d1d2de, !"maxntidx", i32 128} +!6 = !{!"clang version 3.8.0 (tags/RELEASE_380/final)"} +!7 = distinct !DISubprogram(name: "triton__0d1d2de", linkageName: "triton__0d1d2de", scope: !3, file: !3, line: 18, type: !8, scopeLine: 18, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !2) +!8 = !DISubroutineType(cc: DW_CC_normal, types: !9) +!9 = !{} +!10 = !DILocation(line: 21, column: 36, scope: !7) +!11 = !DILocation(line: 20, column: 28, scope: !7) +!12 = !DILocation(line: 20, column: 33, scope: !7) +!13 = !DILocation(line: 21, column: 23, scope: !7) +!14 = !DILocation(line: 24, column: 30, scope: !7) +!15 = !DILocation(line: 24, column: 35, scope: !7) +!16 = !DILocation(line: 24, column: 44, scope: !7) +!17 = !DILocation(line: 29, column: 18, scope: !7) +!18 = !DILocation(line: 30, column: 23, scope: !7) +!19 = !DILocation(line: 27, column: 18, scope: !7) +!20 = !DILocation(line: 32, column: 18, scope: !7) +!21 = !DILocation(line: 33, column: 18, scope: !7) +!22 = !DILocation(line: 35, column: 25, scope: !7) +!23 = !DILocation(line: 35, column: 37, scope: !7) +!24 = !DILocation(line: 35, column: 4, scope: !7) diff --git a/.triton/dump/44b225411009956bfbae22f8bac7d703/triton_.cubin b/.triton/dump/44b225411009956bfbae22f8bac7d703/triton_.cubin new file mode 100644 index 0000000000000000000000000000000000000000..17bdbf12b34ad56c6a745098f52c19ddd361dca6 Binary files /dev/null and b/.triton/dump/44b225411009956bfbae22f8bac7d703/triton_.cubin differ diff --git a/.triton/dump/44b225411009956bfbae22f8bac7d703/triton_.llir b/.triton/dump/44b225411009956bfbae22f8bac7d703/triton_.llir new file mode 100644 index 0000000000000000000000000000000000000000..36bb31f77f885ddb385128896dc337e98cf4c4fa --- /dev/null +++ b/.triton/dump/44b225411009956bfbae22f8bac7d703/triton_.llir @@ -0,0 +1,304 @@ +; ModuleID = 'LLVMDialectModule' +source_filename = "LLVMDialectModule" + +@global_smem = external addrspace(3) global [0 x i8] +@.str = private unnamed_addr constant [11 x i8] c"__CUDA_FTZ\00", align 1 + +define void @triton__0d1d2d3d4d5de6de(ptr addrspace(1) %0, ptr addrspace(1) %1, ptr addrspace(1) %2, ptr addrspace(1) %3, ptr addrspace(1) %4, i32 %5, i32 %6) local_unnamed_addr !dbg !7 { + %8 = tail call i32 @llvm.nvvm.read.ptx.sreg.tid.x(), !dbg !10 + %9 = and i32 %8, 31, !dbg !10 + %10 = lshr i32 %8, 5, !dbg !10 + %11 = and i32 %10, 1, !dbg !10 + %urem = shl i32 %8, 2, !dbg !10 + %12 = and i32 %urem, 252, !dbg !10 + %13 = tail call i32 asm "mov.u32 $0, %ctaid.x;", "=r"() #6, !dbg !11 + %14 = shl i32 %13, 8, !dbg !12 + %15 = or i32 %14, %12, !dbg !13 + %16 = sext i32 %15 to i64, !dbg !14 + %17 = getelementptr float, ptr addrspace(1) %0, i64 %16, !dbg !14 + %18 = tail call { i32, i32, i32, i32 } asm sideeffect "mov.u32 $0, 0x0;\0A\09mov.u32 $1, 0x0;\0A\09mov.u32 $2, 0x0;\0A\09mov.u32 $3, 0x0;\0A\09@$5 ld.global.v4.b32 { $0, $1, $2, $3 }, [ $4 + 0 ];\0A\09@!$7 mov.u32 $0, $6;\0A\09@!$9 mov.u32 $1, $8;\0A\09@!$11 mov.u32 $2, $10;\0A\09@!$13 mov.u32 $3, $12;", "=r,=r,=r,=r,l,b,r,b,r,b,r,b,r,b"(ptr addrspace(1) %17, i1 true, i32 0, i1 true, i32 0, i1 true, i32 0, i1 true, i32 0, i1 true) #6, !dbg !15 + %19 = extractvalue { i32, i32, i32, i32 } %18, 0, !dbg !15 + %20 = extractvalue { i32, i32, i32, i32 } %18, 1, !dbg !15 + %21 = extractvalue { i32, i32, i32, i32 } %18, 2, !dbg !15 + %22 = extractvalue { i32, i32, i32, i32 } %18, 3, !dbg !15 + %23 = bitcast i32 %21 to float, !dbg !15 + %24 = bitcast i32 %22 to float, !dbg !15 + %25 = getelementptr i16, ptr addrspace(1) %1, i64 %16, !dbg !16 + %26 = tail call { i32, i32 } asm sideeffect "mov.u32 $0, 0x0;\0A\09mov.u32 $1, 0x0;\0A\09@$3 ld.global.v2.b32 { $0, $1 }, [ $2 + 0 ];\0A\09@!$5 mov.u32 $0, $4;\0A\09@!$7 mov.u32 $1, $6;", "=r,=r,l,b,r,b,r,b"(ptr addrspace(1) %25, i1 true, i32 0, i1 true, i32 0, i1 true) #6, !dbg !17 + %27 = extractvalue { i32, i32 } %26, 0, !dbg !17 + %28 = extractvalue { i32, i32 } %26, 1, !dbg !17 + %29 = trunc i32 %27 to i16, !dbg !17 + %extelt.offset = lshr i32 %27, 16, !dbg !17 + %30 = trunc i32 %extelt.offset to i16, !dbg !17 + %31 = trunc i32 %28 to i16, !dbg !17 + %extelt.offset1 = lshr i32 %28, 16, !dbg !17 + %32 = trunc i32 %extelt.offset1 to i16, !dbg !17 + %33 = tail call float asm "cvt.f32.bf16 $0, $1;", "=r,h"(i16 %29) #6, !dbg !18 + %34 = tail call float asm "cvt.f32.bf16 $0, $1;", "=r,h"(i16 %30) #6, !dbg !18 + %35 = tail call float asm "cvt.f32.bf16 $0, $1;", "=r,h"(i16 %31) #6, !dbg !18 + %36 = tail call float asm "cvt.f32.bf16 $0, $1;", "=r,h"(i16 %32) #6, !dbg !18 + %37 = getelementptr i16, ptr addrspace(1) %2, i64 %16, !dbg !19 + %38 = tail call { i32, i32 } asm sideeffect "mov.u32 $0, 0x0;\0A\09mov.u32 $1, 0x0;\0A\09@$3 ld.global.v2.b32 { $0, $1 }, [ $2 + 0 ];\0A\09@!$5 mov.u32 $0, $4;\0A\09@!$7 mov.u32 $1, $6;", "=r,=r,l,b,r,b,r,b"(ptr addrspace(1) %37, i1 true, i32 0, i1 true, i32 0, i1 true) #6, !dbg !20 + %39 = extractvalue { i32, i32 } %38, 0, !dbg !20 + %40 = extractvalue { i32, i32 } %38, 1, !dbg !20 + %41 = trunc i32 %39 to i16, !dbg !20 + %extelt.offset2 = lshr i32 %39, 16, !dbg !20 + %42 = trunc i32 %extelt.offset2 to i16, !dbg !20 + %43 = trunc i32 %40 to i16, !dbg !20 + %extelt.offset3 = lshr i32 %40, 16, !dbg !20 + %44 = trunc i32 %extelt.offset3 to i16, !dbg !20 + %45 = tail call float asm "cvt.f32.bf16 $0, $1;", "=r,h"(i16 %41) #6, !dbg !21 + %46 = tail call float asm "cvt.f32.bf16 $0, $1;", "=r,h"(i16 %42) #6, !dbg !21 + %47 = tail call float asm "cvt.f32.bf16 $0, $1;", "=r,h"(i16 %43) #6, !dbg !21 + %48 = tail call float asm "cvt.f32.bf16 $0, $1;", "=r,h"(i16 %44) #6, !dbg !21 + %49 = zext nneg i32 %12 to i64, !dbg !22 + %50 = getelementptr float, ptr addrspace(1) %3, i64 %49, !dbg !22 + %51 = tail call { i32, i32, i32, i32 } asm sideeffect "mov.u32 $0, 0x0;\0A\09mov.u32 $1, 0x0;\0A\09mov.u32 $2, 0x0;\0A\09mov.u32 $3, 0x0;\0A\09@$5 ld.global.L1::evict_last.v4.b32 { $0, $1, $2, $3 }, [ $4 + 0 ];\0A\09@!$7 mov.u32 $0, $6;\0A\09@!$9 mov.u32 $1, $8;\0A\09@!$11 mov.u32 $2, $10;\0A\09@!$13 mov.u32 $3, $12;", "=r,=r,=r,=r,l,b,r,b,r,b,r,b,r,b"(ptr addrspace(1) %50, i1 true, i32 0, i1 true, i32 0, i1 true, i32 0, i1 true, i32 0, i1 true) #6, !dbg !23 + %52 = fadd float %35, %23, !dbg !24 + %53 = fadd float %36, %24, !dbg !24 + %54 = insertelement <2 x i32> poison, i32 %19, i64 0, !dbg !15 + %55 = insertelement <2 x i32> %54, i32 %20, i64 1, !dbg !15 + %56 = bitcast <2 x i32> %55 to <2 x float>, !dbg !15 + %57 = insertelement <2 x float> poison, float %33, i64 0, !dbg !24 + %58 = insertelement <2 x float> %57, float %34, i64 1, !dbg !24 + %59 = fadd <2 x float> %58, %56, !dbg !24 + %60 = insertelement <2 x float> poison, float %45, i64 0, !dbg !25 + %61 = insertelement <2 x float> %60, float %46, i64 1, !dbg !25 + %62 = fadd <2 x float> %59, %61, !dbg !25 + %63 = fadd float %52, %47, !dbg !25 + %64 = fadd float %53, %48, !dbg !25 + %65 = extractelement <2 x float> %62, i64 0, !dbg !26 + %66 = extractelement <2 x float> %62, i64 1, !dbg !26 + %67 = fadd float %65, %66, !dbg !26 + %68 = fadd float %67, %63, !dbg !26 + %69 = fadd float %68, %64, !dbg !26 + %70 = bitcast float %69 to i32, !dbg !32 + %71 = tail call i32 @llvm.nvvm.shfl.sync.bfly.i32(i32 -1, i32 %70, i32 16, i32 31), !dbg !32 + %72 = bitcast i32 %71 to float, !dbg !32 + %73 = fadd float %69, %72, !dbg !26 + %74 = bitcast float %73 to i32, !dbg !32 + %75 = tail call i32 @llvm.nvvm.shfl.sync.bfly.i32(i32 -1, i32 %74, i32 8, i32 31), !dbg !32 + %76 = bitcast i32 %75 to float, !dbg !32 + %77 = fadd float %73, %76, !dbg !26 + %78 = bitcast float %77 to i32, !dbg !32 + %79 = tail call i32 @llvm.nvvm.shfl.sync.bfly.i32(i32 -1, i32 %78, i32 4, i32 31), !dbg !32 + %80 = bitcast i32 %79 to float, !dbg !32 + %81 = fadd float %77, %80, !dbg !26 + %82 = bitcast float %81 to i32, !dbg !32 + %83 = tail call i32 @llvm.nvvm.shfl.sync.bfly.i32(i32 -1, i32 %82, i32 2, i32 31), !dbg !32 + %84 = bitcast i32 %83 to float, !dbg !32 + %85 = fadd float %81, %84, !dbg !26 + %86 = bitcast float %85 to i32, !dbg !32 + %87 = tail call i32 @llvm.nvvm.shfl.sync.bfly.i32(i32 -1, i32 %86, i32 1, i32 31), !dbg !32 + %88 = bitcast i32 %87 to float, !dbg !32 + %89 = fadd float %85, %88, !dbg !26 + %90 = icmp eq i32 %9, 0, !dbg !32 + %91 = zext nneg i32 %11 to i64, !dbg !32 + %92 = getelementptr float, ptr addrspace(3) @global_smem, i64 %91, !dbg !32 + tail call void asm sideeffect "@$2 st.shared.b32 [ $0 + 0 ], $1;", "r,r,b"(ptr addrspace(3) %92, float %89, i1 %90) #6, !dbg !32 + tail call void @llvm.nvvm.barrier0(), !dbg !32 + %93 = icmp slt i32 %8, 2, !dbg !32 + %94 = sext i32 %8 to i64, !dbg !32 + %95 = getelementptr float, ptr addrspace(3) @global_smem, i64 %94, !dbg !32 + %96 = tail call float asm sideeffect "@$2 ld.shared.b32 $0, [ $1 + 0 ];", "=r,r,b"(ptr addrspace(3) %95, i1 %93) #6, !dbg !32 + %97 = bitcast float %96 to i32, !dbg !32 + %98 = tail call i32 @llvm.nvvm.shfl.sync.bfly.i32(i32 -1, i32 %97, i32 1, i32 31), !dbg !32 + %99 = bitcast i32 %98 to float, !dbg !32 + %100 = fadd float %96, %99, !dbg !26 + %101 = and i32 %8, 1, !dbg !32 + %102 = icmp eq i32 %101, 0, !dbg !32 + %103 = and i1 %93, %102, !dbg !32 + tail call void asm sideeffect "@$2 st.shared.b32 [ $0 + 0 ], $1;", "r,r,b"(ptr addrspace(3) %95, float %100, i1 %103) #6, !dbg !32 + tail call void @llvm.nvvm.barrier0(), !dbg !32 + %104 = load float, ptr addrspace(3) @global_smem, align 4, !dbg !32 + %105 = fadd float %104, 0.000000e+00, !dbg !34 + %106 = tail call float asm "div.full.f32 $0, $1, $2;", "=r,r,r"(float %105, float 2.560000e+02) #6, !dbg !38 + %107 = fsub float %65, %106, !dbg !39 + %108 = fsub float %66, %106, !dbg !39 + %109 = fsub float %63, %106, !dbg !39 + %110 = fsub float %64, %106, !dbg !39 + %111 = fmul float %107, %107, !dbg !40 + %112 = fmul float %108, %108, !dbg !40 + %113 = fmul float %109, %109, !dbg !40 + %114 = fmul float %110, %110, !dbg !40 + tail call void @llvm.nvvm.barrier0(), !dbg !41 + %115 = fadd float %111, %112, !dbg !43 + %116 = fadd float %113, %115, !dbg !43 + %117 = fadd float %114, %116, !dbg !43 + %118 = bitcast float %117 to i32, !dbg !41 + %119 = tail call i32 @llvm.nvvm.shfl.sync.bfly.i32(i32 -1, i32 %118, i32 16, i32 31), !dbg !41 + %120 = bitcast i32 %119 to float, !dbg !41 + %121 = fadd float %117, %120, !dbg !43 + %122 = bitcast float %121 to i32, !dbg !41 + %123 = tail call i32 @llvm.nvvm.shfl.sync.bfly.i32(i32 -1, i32 %122, i32 8, i32 31), !dbg !41 + %124 = bitcast i32 %123 to float, !dbg !41 + %125 = fadd float %121, %124, !dbg !43 + %126 = bitcast float %125 to i32, !dbg !41 + %127 = tail call i32 @llvm.nvvm.shfl.sync.bfly.i32(i32 -1, i32 %126, i32 4, i32 31), !dbg !41 + %128 = bitcast i32 %127 to float, !dbg !41 + %129 = fadd float %125, %128, !dbg !43 + %130 = bitcast float %129 to i32, !dbg !41 + %131 = tail call i32 @llvm.nvvm.shfl.sync.bfly.i32(i32 -1, i32 %130, i32 2, i32 31), !dbg !41 + %132 = bitcast i32 %131 to float, !dbg !41 + %133 = fadd float %129, %132, !dbg !43 + %134 = bitcast float %133 to i32, !dbg !41 + %135 = tail call i32 @llvm.nvvm.shfl.sync.bfly.i32(i32 -1, i32 %134, i32 1, i32 31), !dbg !41 + %136 = bitcast i32 %135 to float, !dbg !41 + %137 = fadd float %133, %136, !dbg !43 + tail call void asm sideeffect "@$2 st.shared.b32 [ $0 + 0 ], $1;", "r,r,b"(ptr addrspace(3) %92, float %137, i1 %90) #6, !dbg !41 + tail call void @llvm.nvvm.barrier0(), !dbg !41 + %138 = tail call float asm sideeffect "@$2 ld.shared.b32 $0, [ $1 + 0 ];", "=r,r,b"(ptr addrspace(3) %95, i1 %93) #6, !dbg !41 + %139 = bitcast float %138 to i32, !dbg !41 + %140 = tail call i32 @llvm.nvvm.shfl.sync.bfly.i32(i32 -1, i32 %139, i32 1, i32 31), !dbg !41 + %141 = bitcast i32 %140 to float, !dbg !41 + %142 = fadd float %138, %141, !dbg !43 + tail call void asm sideeffect "@$2 st.shared.b32 [ $0 + 0 ], $1;", "r,r,b"(ptr addrspace(3) %95, float %142, i1 %103) #6, !dbg !41 + tail call void @llvm.nvvm.barrier0(), !dbg !41 + %143 = load float, ptr addrspace(3) @global_smem, align 4, !dbg !41 + %144 = fadd float %143, 0.000000e+00, !dbg !46 + %145 = tail call float asm "div.full.f32 $0, $1, $2;", "=r,r,r"(float %144, float 2.560000e+02) #6, !dbg !48 + %146 = fadd float %145, 0x3EE4F8B580000000, !dbg !49 + %147 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #6, !dbg !50 + %.not.i = icmp eq i32 %147, 0, !dbg !50 + br i1 %.not.i, label %150, label %148, !dbg !50 + +148: ; preds = %7 + %149 = tail call float @llvm.nvvm.rsqrt.approx.ftz.f(float %146), !dbg !50 + br label %__nv_rsqrtf.exit, !dbg !50 + +150: ; preds = %7 + %151 = tail call float @llvm.nvvm.rsqrt.approx.f(float %146), !dbg !50 + br label %__nv_rsqrtf.exit, !dbg !50 + +__nv_rsqrtf.exit: ; preds = %148, %150 + %.0.i = phi float [ %149, %148 ], [ %151, %150 ], !dbg !50 + %152 = extractvalue { i32, i32, i32, i32 } %51, 3, !dbg !23 + %153 = bitcast i32 %152 to float, !dbg !23 + %154 = extractvalue { i32, i32, i32, i32 } %51, 2, !dbg !23 + %155 = bitcast i32 %154 to float, !dbg !23 + %156 = extractvalue { i32, i32, i32, i32 } %51, 1, !dbg !23 + %157 = bitcast i32 %156 to float, !dbg !23 + %158 = extractvalue { i32, i32, i32, i32 } %51, 0, !dbg !23 + %159 = bitcast i32 %158 to float, !dbg !23 + %160 = fmul float %107, %.0.i, !dbg !51 + %161 = fmul float %108, %.0.i, !dbg !51 + %162 = fmul float %109, %.0.i, !dbg !51 + %163 = fmul float %110, %.0.i, !dbg !51 + %164 = fmul float %160, %159, !dbg !52 + %165 = fmul float %161, %157, !dbg !52 + %166 = fmul float %162, %155, !dbg !52 + %167 = fmul float %163, %153, !dbg !52 + %168 = getelementptr float, ptr addrspace(1) %4, i64 %16, !dbg !53 + %169 = bitcast float %164 to i32, !dbg !54 + %170 = bitcast float %165 to i32, !dbg !54 + %171 = bitcast float %166 to i32, !dbg !54 + %172 = bitcast float %167 to i32, !dbg !54 + tail call void asm sideeffect "@$5 st.global.v4.b32 [ $4 + 0 ], { $0, $1, $2, $3 };", "r,r,r,r,l,b"(i32 %169, i32 %170, i32 %171, i32 %172, ptr addrspace(1) %168, i1 true) #6, !dbg !54 + ret void, !dbg !55 +} + +; Function Attrs: mustprogress nocallback nofree nosync nounwind speculatable willreturn memory(none) +declare noundef i32 @llvm.nvvm.read.ptx.sreg.tid.x() #0 + +; Function Attrs: convergent nocallback nounwind memory(inaccessiblemem: readwrite) +declare i32 @llvm.nvvm.shfl.sync.bfly.i32(i32, i32, i32, i32) #1 + +; Function Attrs: convergent nocallback nounwind +declare void @llvm.nvvm.barrier0() #2 + +; Function Attrs: alwaysinline nounwind +define float @__nv_rsqrtf(float %x) local_unnamed_addr #3 { + %1 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #6 + %.not = icmp eq i32 %1, 0 + br i1 %.not, label %4, label %2 + +2: ; preds = %0 + %3 = tail call float @llvm.nvvm.rsqrt.approx.ftz.f(float %x) + br label %6 + +4: ; preds = %0 + %5 = tail call float @llvm.nvvm.rsqrt.approx.f(float %x) + br label %6 + +6: ; preds = %4, %2 + %.0 = phi float [ %3, %2 ], [ %5, %4 ] + ret float %.0 +} + +declare i32 @__nvvm_reflect(ptr) local_unnamed_addr #4 + +; Function Attrs: mustprogress nocallback nofree nosync nounwind willreturn memory(none) +declare float @llvm.nvvm.rsqrt.approx.ftz.f(float) #5 + +; Function Attrs: mustprogress nocallback nofree nosync nounwind willreturn memory(none) +declare float @llvm.nvvm.rsqrt.approx.f(float) #5 + +attributes #0 = { mustprogress nocallback nofree nosync nounwind speculatable willreturn memory(none) } +attributes #1 = { convergent nocallback nounwind memory(inaccessiblemem: readwrite) } +attributes #2 = { convergent nocallback nounwind } +attributes #3 = { alwaysinline nounwind "disable-tail-calls"="false" "frame-pointer"="all" "less-precise-fpmad"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" } +attributes #4 = { "disable-tail-calls"="false" "frame-pointer"="all" "less-precise-fpmad"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" } +attributes #5 = { mustprogress nocallback nofree nosync nounwind willreturn memory(none) } +attributes #6 = { nounwind } + +!llvm.module.flags = !{!0, !1} +!llvm.dbg.cu = !{!2} +!nvvm.annotations = !{!4, !5, !5, !4} +!llvm.ident = !{!6} + +!0 = !{i32 2, !"Debug Info Version", i32 3} +!1 = !{i32 4, !"nvvm-reflect-ftz", i32 1} +!2 = distinct !DICompileUnit(language: DW_LANG_C, file: !3, producer: "triton", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug) +!3 = !DIFile(filename: "ctvr3xs46luhhbr7xomihgyropjaatss7yata4igaw6kvgwas7g2.py", directory: "/tmp/torchinductor_root/tv") +!4 = !{ptr @triton__0d1d2d3d4d5de6de, !"kernel", i32 1} +!5 = !{ptr @triton__0d1d2d3d4d5de6de, !"maxntidx", i32 64} +!6 = !{!"clang version 3.8.0 (tags/RELEASE_380/final)"} +!7 = distinct !DISubprogram(name: "triton__0d1d2d3d4d5de6de", linkageName: "triton__0d1d2d3d4d5de6de", scope: !3, file: !3, line: 18, type: !8, scopeLine: 18, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !2) +!8 = !DISubroutineType(cc: DW_CC_normal, types: !9) +!9 = !{} +!10 = !DILocation(line: 26, column: 26, scope: !7) +!11 = !DILocation(line: 23, column: 28, scope: !7) +!12 = !DILocation(line: 30, column: 40, scope: !7) +!13 = !DILocation(line: 30, column: 36, scope: !7) +!14 = !DILocation(line: 30, column: 30, scope: !7) +!15 = !DILocation(line: 30, column: 46, scope: !7) +!16 = !DILocation(line: 31, column: 30, scope: !7) +!17 = !DILocation(line: 31, column: 46, scope: !7) +!18 = !DILocation(line: 31, column: 67, scope: !7) +!19 = !DILocation(line: 32, column: 30, scope: !7) +!20 = !DILocation(line: 32, column: 46, scope: !7) +!21 = !DILocation(line: 32, column: 67, scope: !7) +!22 = !DILocation(line: 33, column: 31, scope: !7) +!23 = !DILocation(line: 33, column: 36, scope: !7) +!24 = !DILocation(line: 35, column: 18, scope: !7) +!25 = !DILocation(line: 37, column: 18, scope: !7) +!26 = !DILocation(line: 233, column: 15, scope: !27, inlinedAt: !30) +!27 = distinct !DILexicalBlockFile(scope: !29, file: !28, discriminator: 0) +!28 = !DIFile(filename: "standard.py", directory: "/usr/local/lib/python3.10/dist-packages/triton/language") +!29 = distinct !DILexicalBlockFile(scope: !7, file: !28, discriminator: 0) +!30 = !DILocation(line: 243, column: 36, scope: !27, inlinedAt: !31) +!31 = !DILocation(line: 42, column: 59, scope: !27) +!32 = !DILocation(line: 243, column: 36, scope: !29, inlinedAt: !33) +!33 = !DILocation(line: 42, column: 59, scope: !29) +!34 = !DILocation(line: 8, column: 15, scope: !35, inlinedAt: !37) +!35 = distinct !DILexicalBlockFile(scope: !7, file: !36, discriminator: 0) +!36 = !DIFile(filename: "triton_helpers.py", directory: "/usr/local/lib/python3.10/dist-packages/torch/_inductor") +!37 = !DILocation(line: 42, column: 45, scope: !35) +!38 = !DILocation(line: 45, column: 20, scope: !7) +!39 = !DILocation(line: 46, column: 19, scope: !7) +!40 = !DILocation(line: 47, column: 20, scope: !7) +!41 = !DILocation(line: 243, column: 36, scope: !29, inlinedAt: !42) +!42 = !DILocation(line: 50, column: 59, scope: !29) +!43 = !DILocation(line: 233, column: 15, scope: !27, inlinedAt: !44) +!44 = !DILocation(line: 243, column: 36, scope: !27, inlinedAt: !45) +!45 = !DILocation(line: 50, column: 59, scope: !27) +!46 = !DILocation(line: 8, column: 15, scope: !35, inlinedAt: !47) +!47 = !DILocation(line: 50, column: 45, scope: !35) +!48 = !DILocation(line: 53, column: 20, scope: !7) +!49 = !DILocation(line: 55, column: 20, scope: !7) +!50 = !DILocation(line: 56, column: 26, scope: !7) +!51 = !DILocation(line: 57, column: 20, scope: !7) +!52 = !DILocation(line: 58, column: 20, scope: !7) +!53 = !DILocation(line: 59, column: 25, scope: !7) +!54 = !DILocation(line: 59, column: 48, scope: !7) +!55 = !DILocation(line: 59, column: 4, scope: !7) diff --git a/.triton/dump/44b225411009956bfbae22f8bac7d703/triton_.ttir b/.triton/dump/44b225411009956bfbae22f8bac7d703/triton_.ttir new file mode 100644 index 0000000000000000000000000000000000000000..8368d08e617d5afffe52b03226bb83f89c3b425c --- /dev/null +++ b/.triton/dump/44b225411009956bfbae22f8bac7d703/triton_.ttir @@ -0,0 +1,61 @@ +module { + tt.func public @triton__0d1d2d3d4d5de6de(%arg0: !tt.ptr {tt.divisibility = 16 : i32}, %arg1: !tt.ptr {tt.divisibility = 16 : i32}, %arg2: !tt.ptr {tt.divisibility = 16 : i32}, %arg3: !tt.ptr {tt.divisibility = 16 : i32}, %arg4: !tt.ptr {tt.divisibility = 16 : i32}, %arg5: i32 {tt.divisibility = 16 : i32, tt.max_divisibility = 16 : i32}, %arg6: i32 {tt.divisibility = 16 : i32, tt.max_divisibility = 16 : i32}) attributes {noinline = false} { + %c256_i32 = arith.constant 256 : i32 + %cst = arith.constant dense<0.000000e+00> : tensor<256xbf16> + %cst_0 = arith.constant 0.000000e+00 : f32 + %cst_1 = arith.constant 2.560000e+02 : f32 + %cst_2 = arith.constant 9.99999974E-6 : f32 + %cst_3 = arith.constant dense<0.000000e+00> : tensor<256xf32> + %cst_4 = arith.constant dense<256> : tensor<256xi32> + %0 = tt.get_program_id x : i32 + %1 = tt.make_range {end = 256 : i32, start = 0 : i32} : tensor<256xi32> + %2 = arith.cmpi slt, %1, %cst_4 : tensor<256xi32> + %3 = arith.muli %0, %c256_i32 : i32 + %4 = tt.splat %3 : (i32) -> tensor<256xi32> + %5 = arith.addi %1, %4 : tensor<256xi32> + %6 = tt.splat %arg0 : (!tt.ptr) -> tensor<256x!tt.ptr> + %7 = tt.addptr %6, %5 : tensor<256x!tt.ptr>, tensor<256xi32> + %8 = tt.load %7, %2, %cst_3 {cache = 1 : i32, evict = 1 : i32, isVolatile = false} : tensor<256xf32> + %9 = tt.splat %arg1 : (!tt.ptr) -> tensor<256x!tt.ptr> + %10 = tt.addptr %9, %5 : tensor<256x!tt.ptr>, tensor<256xi32> + %11 = tt.load %10, %2, %cst {cache = 1 : i32, evict = 1 : i32, isVolatile = false} : tensor<256xbf16> + %12 = arith.extf %11 : tensor<256xbf16> to tensor<256xf32> + %13 = tt.splat %arg2 : (!tt.ptr) -> tensor<256x!tt.ptr> + %14 = tt.addptr %13, %5 : tensor<256x!tt.ptr>, tensor<256xi32> + %15 = tt.load %14, %2, %cst {cache = 1 : i32, evict = 1 : i32, isVolatile = false} : tensor<256xbf16> + %16 = arith.extf %15 : tensor<256xbf16> to tensor<256xf32> + %17 = tt.splat %arg3 : (!tt.ptr) -> tensor<256x!tt.ptr> + %18 = tt.addptr %17, %1 : tensor<256x!tt.ptr>, tensor<256xi32> + %19 = tt.load %18, %2, %cst_3 {cache = 1 : i32, evict = 3 : i32, isVolatile = false} : tensor<256xf32> + %20 = arith.addf %8, %12 : tensor<256xf32> + %21 = arith.addf %20, %16 : tensor<256xf32> + %22 = arith.select %2, %21, %cst_3 : tensor<256xi1>, tensor<256xf32> + %23 = "tt.reduce"(%22) <{axis = 0 : i32}> ({ + ^bb0(%arg7: f32, %arg8: f32): + %40 = arith.addf %arg7, %arg8 : f32 + tt.reduce.return %40 : f32 + }) : (tensor<256xf32>) -> f32 + %24 = arith.addf %23, %cst_0 : f32 + %25 = arith.divf %24, %cst_1 : f32 + %26 = tt.splat %25 : (f32) -> tensor<256xf32> + %27 = arith.subf %21, %26 : tensor<256xf32> + %28 = arith.mulf %27, %27 : tensor<256xf32> + %29 = arith.select %2, %28, %cst_3 : tensor<256xi1>, tensor<256xf32> + %30 = "tt.reduce"(%29) <{axis = 0 : i32}> ({ + ^bb0(%arg7: f32, %arg8: f32): + %40 = arith.addf %arg7, %arg8 : f32 + tt.reduce.return %40 : f32 + }) : (tensor<256xf32>) -> f32 + %31 = arith.addf %30, %cst_0 : f32 + %32 = arith.divf %31, %cst_1 : f32 + %33 = arith.addf %32, %cst_2 : f32 + %34 = tt.extern_elementwise %33 {libname = "libdevice", libpath = "/usr/local/lib/python3.10/dist-packages/triton/language/../third_party/cuda/lib/libdevice.10.bc", pure = true, symbol = "__nv_rsqrtf"} : (f32) -> f32 + %35 = tt.splat %34 : (f32) -> tensor<256xf32> + %36 = arith.mulf %27, %35 : tensor<256xf32> + %37 = arith.mulf %36, %19 : tensor<256xf32> + %38 = tt.splat %arg4 : (!tt.ptr) -> tensor<256x!tt.ptr> + %39 = tt.addptr %38, %5 : tensor<256x!tt.ptr>, tensor<256xi32> + tt.store %39, %37, %2 {cache = 1 : i32, evict = 1 : i32} : tensor<256xf32> + tt.return + } +} diff --git a/.triton/dump/4c6ad48573c74d55ed79384f6b432d50/triton_.ttir b/.triton/dump/4c6ad48573c74d55ed79384f6b432d50/triton_.ttir new file mode 100644 index 0000000000000000000000000000000000000000..e394324cf70ba1d55f57e9682dc705e97894c983 --- /dev/null +++ b/.triton/dump/4c6ad48573c74d55ed79384f6b432d50/triton_.ttir @@ -0,0 +1,18 @@ +module { + tt.func public @triton__0d1d2de(%arg0: !tt.ptr {tt.divisibility = 16 : i32}, %arg1: !tt.ptr {tt.divisibility = 16 : i32}, %arg2: i32 {tt.divisibility = 16 : i32, tt.max_divisibility = 16 : i32}) attributes {noinline = false} { + %c1024_i32 = arith.constant 1024 : i32 + %0 = tt.get_program_id x : i32 + %1 = arith.muli %0, %c1024_i32 : i32 + %2 = tt.make_range {end = 1024 : i32, start = 0 : i32} : tensor<1024xi32> + %3 = tt.splat %1 : (i32) -> tensor<1024xi32> + %4 = arith.addi %3, %2 : tensor<1024xi32> + %5 = tt.splat %arg0 : (!tt.ptr) -> tensor<1024x!tt.ptr> + %6 = tt.addptr %5, %4 : tensor<1024x!tt.ptr>, tensor<1024xi32> + %7 = tt.load %6 {cache = 1 : i32, evict = 1 : i32, isVolatile = false} : tensor<1024xf32> + %8 = tt.splat %arg1 : (!tt.ptr) -> tensor<1024x!tt.ptr> + %9 = tt.addptr %8, %4 : tensor<1024x!tt.ptr>, tensor<1024xi32> + %10 = arith.truncf %7 : tensor<1024xf32> to tensor<1024xbf16> + tt.store %9, %10 {cache = 1 : i32, evict = 1 : i32} : tensor<1024xbf16> + tt.return + } +} diff --git a/.triton/dump/4d7b96448927b8146af43cb9f39e0544/triton_.llir b/.triton/dump/4d7b96448927b8146af43cb9f39e0544/triton_.llir new file mode 100644 index 0000000000000000000000000000000000000000..e610d9ef640830cfda53810d7159f1bc8c5def66 --- /dev/null +++ b/.triton/dump/4d7b96448927b8146af43cb9f39e0544/triton_.llir @@ -0,0 +1,362 @@ +; ModuleID = 'LLVMDialectModule' +source_filename = "LLVMDialectModule" + +@.str = private unnamed_addr constant [11 x i8] c"__CUDA_FTZ\00", align 1 + +define void @triton__0d1d2de(ptr addrspace(1) %0, ptr addrspace(1) %1, i32 %2) local_unnamed_addr !dbg !7 { + %4 = tail call i32 @llvm.nvvm.read.ptx.sreg.tid.x(), !dbg !10 + %5 = shl i32 %4, 1, !dbg !10 + %6 = and i32 %5, 510, !dbg !10 + %7 = tail call i32 asm "mov.u32 $0, %ctaid.x;", "=r"() #4, !dbg !11 + %8 = shl i32 %7, 9, !dbg !12 + %9 = or i32 %8, %6, !dbg !13 + %10 = sext i32 %9 to i64, !dbg !14 + %11 = getelementptr i16, ptr addrspace(1) %0, i64 %10, !dbg !14 + %12 = tail call i32 asm sideeffect "mov.u32 $0, 0x0;\0A\09@$2 ld.global.b32 { $0 }, [ $1 + 0 ];", "=r,l,b"(ptr addrspace(1) %11, i1 true) #4, !dbg !15 + %13 = trunc i32 %12 to i16, !dbg !15 + %extelt.offset = lshr i32 %12, 16, !dbg !15 + %14 = trunc i32 %extelt.offset to i16, !dbg !15 + %15 = tail call float asm "cvt.f32.bf16 $0, $1;", "=r,h"(i16 %13) #4, !dbg !16 + %16 = tail call float asm "cvt.f32.bf16 $0, $1;", "=r,h"(i16 %14) #4, !dbg !16 + %17 = getelementptr i16, ptr addrspace(1) %1, i64 %10, !dbg !17 + %18 = tail call i32 asm sideeffect "mov.u32 $0, 0x0;\0A\09@$2 ld.global.b32 { $0 }, [ $1 + 0 ];", "=r,l,b"(ptr addrspace(1) %17, i1 true) #4, !dbg !18 + %19 = trunc i32 %18 to i16, !dbg !18 + %extelt.offset1 = lshr i32 %18, 16, !dbg !18 + %20 = trunc i32 %extelt.offset1 to i16, !dbg !18 + %21 = tail call float asm "cvt.f32.bf16 $0, $1;", "=r,h"(i16 %19) #4, !dbg !19 + %22 = tail call float asm "cvt.f32.bf16 $0, $1;", "=r,h"(i16 %20) #4, !dbg !19 + %23 = fmul float %21, 0x3FE6A09E60000000, !dbg !20 + %24 = fmul float %22, 0x3FE6A09E60000000, !dbg !20 + %25 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !21 + %.not.i = icmp eq i32 %25, 0, !dbg !21 + %26 = tail call float @llvm.nvvm.fabs.ftz.f(float %23) #4, !dbg !21 + %27 = tail call float @llvm.nvvm.fabs.f(float %23) #4, !dbg !21 + %.0.i = select i1 %.not.i, float %27, float %26, !dbg !21 + %28 = fcmp oge float %.0.i, 0x3FF00C1FC0000000, !dbg !21 + br i1 %28, label %__nv_fabsf.exit1.i, label %30, !dbg !21 + +__nv_fabsf.exit1.i: ; preds = %3 + %29 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !21 + %.not1.i = icmp eq i32 %29, 0, !dbg !21 + %.01.i = select i1 %.not1.i, float %27, float %26, !dbg !21 + br label %__internal_fmad.exit.i, !dbg !21 + +30: ; preds = %3 + %31 = fmul float %23, %23, !dbg !21 + br label %__internal_fmad.exit.i, !dbg !21 + +__internal_fmad.exit.i: ; preds = %30, %__nv_fabsf.exit1.i + %32 = phi float [ 0x3FE41B0840000000, %__nv_fabsf.exit1.i ], [ 0x3FC06EBA60000000, %30 ], !dbg !21 + %33 = phi float [ 0x3FED526FC0000000, %__nv_fabsf.exit1.i ], [ 0xBFD8127580000000, %30 ], !dbg !21 + %34 = phi float [ 0x3FC39F20C0000000, %__nv_fabsf.exit1.i ], [ 0x3FBCE315E0000000, %30 ], !dbg !21 + %35 = phi float [ 0xBFA1902C40000000, %__nv_fabsf.exit1.i ], [ 0xBF9B837CE0000000, %30 ], !dbg !21 + %36 = phi float [ 0x3F75908160000000, %__nv_fabsf.exit1.i ], [ 0x3F755ABD40000000, %30 ], !dbg !21 + %37 = phi float [ 0xBF3EAC1720000000, %__nv_fabsf.exit1.i ], [ 0xBF4AE9A400000000, %30 ], !dbg !21 + %38 = phi float [ 0x3EF1394780000000, %__nv_fabsf.exit1.i ], [ 0x3F163D2D40000000, %30 ], !dbg !21 + %39 = phi float [ %.01.i, %__nv_fabsf.exit1.i ], [ %31, %30 ], !dbg !21 + %40 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !21 + %.not2.i = icmp eq i32 %40, 0, !dbg !21 + %41 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %38, float %39, float %37) #4, !dbg !21 + %42 = tail call float @llvm.nvvm.fma.rn.f(float %38, float %39, float %37) #4, !dbg !21 + %.02.i = select i1 %.not2.i, float %42, float %41, !dbg !21 + %43 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !21 + %.not3.i = icmp eq i32 %43, 0, !dbg !21 + %44 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.02.i, float %39, float %36) #4, !dbg !21 + %45 = tail call float @llvm.nvvm.fma.rn.f(float %.02.i, float %39, float %36) #4, !dbg !21 + %.03.i = select i1 %.not3.i, float %45, float %44, !dbg !21 + %46 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !21 + %.not4.i = icmp eq i32 %46, 0, !dbg !21 + %47 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.03.i, float %39, float %35) #4, !dbg !21 + %48 = tail call float @llvm.nvvm.fma.rn.f(float %.03.i, float %39, float %35) #4, !dbg !21 + %.04.i = select i1 %.not4.i, float %48, float %47, !dbg !21 + %49 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !21 + %.not5.i = icmp eq i32 %49, 0, !dbg !21 + %50 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.04.i, float %39, float %34) #4, !dbg !21 + %51 = tail call float @llvm.nvvm.fma.rn.f(float %.04.i, float %39, float %34) #4, !dbg !21 + %.05.i = select i1 %.not5.i, float %51, float %50, !dbg !21 + %52 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !21 + %.not6.i = icmp eq i32 %52, 0, !dbg !21 + %53 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.05.i, float %39, float %33) #4, !dbg !21 + %54 = tail call float @llvm.nvvm.fma.rn.f(float %.05.i, float %39, float %33) #4, !dbg !21 + %.06.i = select i1 %.not6.i, float %54, float %53, !dbg !21 + %55 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !21 + %.not7.i = icmp eq i32 %55, 0, !dbg !21 + %56 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.06.i, float %39, float %32) #4, !dbg !21 + %57 = tail call float @llvm.nvvm.fma.rn.f(float %.06.i, float %39, float %32) #4, !dbg !21 + %.07.i = select i1 %.not7.i, float %57, float %56, !dbg !21 + %58 = fneg float %39, !dbg !21 + %59 = select i1 %28, float %58, float %23, !dbg !21 + %60 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !21 + %.not8.i = icmp eq i32 %60, 0, !dbg !21 + %61 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.07.i, float %59, float %59) #4, !dbg !21 + %62 = tail call float @llvm.nvvm.fma.rn.f(float %.07.i, float %59, float %59) #4, !dbg !21 + %.08.i = select i1 %.not8.i, float %62, float %61, !dbg !21 + br i1 %28, label %63, label %__nv_erff.exit, !dbg !21 + +63: ; preds = %__internal_fmad.exit.i + %64 = tail call float @llvm.nvvm.ex2.approx.ftz.f(float %.08.i) #4, !dbg !21 + %65 = fsub float 1.000000e+00, %64, !dbg !21 + %66 = bitcast float %65 to i32, !dbg !21 + %67 = bitcast float %23 to i32, !dbg !21 + %68 = and i32 %67, -2147483648, !dbg !21 + %69 = or i32 %68, %66, !dbg !21 + %70 = bitcast i32 %69 to float, !dbg !21 + br label %__nv_erff.exit, !dbg !21 + +__nv_erff.exit: ; preds = %__internal_fmad.exit.i, %63 + %r.0.i = phi float [ %70, %63 ], [ %.08.i, %__internal_fmad.exit.i ], !dbg !21 + %71 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !21 + %.not.i2 = icmp eq i32 %71, 0, !dbg !21 + %72 = tail call float @llvm.nvvm.fabs.ftz.f(float %24) #4, !dbg !21 + %73 = tail call float @llvm.nvvm.fabs.f(float %24) #4, !dbg !21 + %.0.i3 = select i1 %.not.i2, float %73, float %72, !dbg !21 + %74 = fcmp oge float %.0.i3, 0x3FF00C1FC0000000, !dbg !21 + br i1 %74, label %__nv_fabsf.exit1.i20, label %76, !dbg !21 + +__nv_fabsf.exit1.i20: ; preds = %__nv_erff.exit + %75 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !21 + %.not1.i21 = icmp eq i32 %75, 0, !dbg !21 + %.01.i22 = select i1 %.not1.i21, float %73, float %72, !dbg !21 + br label %__internal_fmad.exit.i4, !dbg !21 + +76: ; preds = %__nv_erff.exit + %77 = fmul float %24, %24, !dbg !21 + br label %__internal_fmad.exit.i4, !dbg !21 + +__internal_fmad.exit.i4: ; preds = %76, %__nv_fabsf.exit1.i20 + %78 = phi float [ 0x3FE41B0840000000, %__nv_fabsf.exit1.i20 ], [ 0x3FC06EBA60000000, %76 ], !dbg !21 + %79 = phi float [ 0x3FED526FC0000000, %__nv_fabsf.exit1.i20 ], [ 0xBFD8127580000000, %76 ], !dbg !21 + %80 = phi float [ 0x3FC39F20C0000000, %__nv_fabsf.exit1.i20 ], [ 0x3FBCE315E0000000, %76 ], !dbg !21 + %81 = phi float [ 0xBFA1902C40000000, %__nv_fabsf.exit1.i20 ], [ 0xBF9B837CE0000000, %76 ], !dbg !21 + %82 = phi float [ 0x3F75908160000000, %__nv_fabsf.exit1.i20 ], [ 0x3F755ABD40000000, %76 ], !dbg !21 + %83 = phi float [ 0xBF3EAC1720000000, %__nv_fabsf.exit1.i20 ], [ 0xBF4AE9A400000000, %76 ], !dbg !21 + %84 = phi float [ 0x3EF1394780000000, %__nv_fabsf.exit1.i20 ], [ 0x3F163D2D40000000, %76 ], !dbg !21 + %85 = phi float [ %.01.i22, %__nv_fabsf.exit1.i20 ], [ %77, %76 ], !dbg !21 + %86 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !21 + %.not2.i5 = icmp eq i32 %86, 0, !dbg !21 + %87 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %84, float %85, float %83) #4, !dbg !21 + %88 = tail call float @llvm.nvvm.fma.rn.f(float %84, float %85, float %83) #4, !dbg !21 + %.02.i6 = select i1 %.not2.i5, float %88, float %87, !dbg !21 + %89 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !21 + %.not3.i7 = icmp eq i32 %89, 0, !dbg !21 + %90 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.02.i6, float %85, float %82) #4, !dbg !21 + %91 = tail call float @llvm.nvvm.fma.rn.f(float %.02.i6, float %85, float %82) #4, !dbg !21 + %.03.i8 = select i1 %.not3.i7, float %91, float %90, !dbg !21 + %92 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !21 + %.not4.i9 = icmp eq i32 %92, 0, !dbg !21 + %93 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.03.i8, float %85, float %81) #4, !dbg !21 + %94 = tail call float @llvm.nvvm.fma.rn.f(float %.03.i8, float %85, float %81) #4, !dbg !21 + %.04.i10 = select i1 %.not4.i9, float %94, float %93, !dbg !21 + %95 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !21 + %.not5.i11 = icmp eq i32 %95, 0, !dbg !21 + %96 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.04.i10, float %85, float %80) #4, !dbg !21 + %97 = tail call float @llvm.nvvm.fma.rn.f(float %.04.i10, float %85, float %80) #4, !dbg !21 + %.05.i12 = select i1 %.not5.i11, float %97, float %96, !dbg !21 + %98 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !21 + %.not6.i13 = icmp eq i32 %98, 0, !dbg !21 + %99 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.05.i12, float %85, float %79) #4, !dbg !21 + %100 = tail call float @llvm.nvvm.fma.rn.f(float %.05.i12, float %85, float %79) #4, !dbg !21 + %.06.i14 = select i1 %.not6.i13, float %100, float %99, !dbg !21 + %101 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !21 + %.not7.i15 = icmp eq i32 %101, 0, !dbg !21 + %102 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.06.i14, float %85, float %78) #4, !dbg !21 + %103 = tail call float @llvm.nvvm.fma.rn.f(float %.06.i14, float %85, float %78) #4, !dbg !21 + %.07.i16 = select i1 %.not7.i15, float %103, float %102, !dbg !21 + %104 = fneg float %85, !dbg !21 + %105 = select i1 %74, float %104, float %24, !dbg !21 + %106 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4, !dbg !21 + %.not8.i17 = icmp eq i32 %106, 0, !dbg !21 + %107 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.07.i16, float %105, float %105) #4, !dbg !21 + %108 = tail call float @llvm.nvvm.fma.rn.f(float %.07.i16, float %105, float %105) #4, !dbg !21 + %.08.i18 = select i1 %.not8.i17, float %108, float %107, !dbg !21 + br i1 %74, label %109, label %__nv_erff.exit23, !dbg !21 + +109: ; preds = %__internal_fmad.exit.i4 + %110 = tail call float @llvm.nvvm.ex2.approx.ftz.f(float %.08.i18) #4, !dbg !21 + %111 = fsub float 1.000000e+00, %110, !dbg !21 + %112 = bitcast float %111 to i32, !dbg !21 + %113 = bitcast float %24 to i32, !dbg !21 + %114 = and i32 %113, -2147483648, !dbg !21 + %115 = or i32 %114, %112, !dbg !21 + %116 = bitcast i32 %115 to float, !dbg !21 + br label %__nv_erff.exit23, !dbg !21 + +__nv_erff.exit23: ; preds = %__internal_fmad.exit.i4, %109 + %r.0.i19 = phi float [ %116, %109 ], [ %.08.i18, %__internal_fmad.exit.i4 ], !dbg !21 + %117 = fadd float %r.0.i, 1.000000e+00, !dbg !22 + %118 = fadd float %r.0.i19, 1.000000e+00, !dbg !22 + %119 = fmul float %117, 5.000000e-01, !dbg !23 + %120 = fmul float %118, 5.000000e-01, !dbg !23 + %121 = fmul float %21, %21, !dbg !24 + %122 = fmul float %22, %22, !dbg !24 + %123 = fmul float %121, -5.000000e-01, !dbg !25 + %124 = fmul float %122, -5.000000e-01, !dbg !25 + %125 = fmul float %123, 0x3FF7154760000000, !dbg !26 + %126 = tail call float asm "ex2.approx.f32 $0, $1;", "=f,f"(float %125) #4, !dbg !26 + %127 = fmul float %124, 0x3FF7154760000000, !dbg !26 + %128 = tail call float asm "ex2.approx.f32 $0, $1;", "=f,f"(float %127) #4, !dbg !26 + %129 = fmul float %126, 0x3FD9884540000000, !dbg !27 + %130 = fmul float %128, 0x3FD9884540000000, !dbg !27 + %131 = fmul float %21, %129, !dbg !28 + %132 = fmul float %22, %130, !dbg !28 + %133 = fadd float %119, %131, !dbg !29 + %134 = fadd float %120, %132, !dbg !29 + %135 = fmul float %15, %133, !dbg !30 + %136 = fmul float %16, %134, !dbg !30 + %137 = tail call i16 asm "cvt.rn.bf16.f32 $0, $1;", "=h,r"(float %135) #4, !dbg !31 + %138 = tail call i16 asm "cvt.rn.bf16.f32 $0, $1;", "=h,r"(float %136) #4, !dbg !31 + %139 = insertelement <2 x i16> undef, i16 %137, i64 0, !dbg !31 + %140 = insertelement <2 x i16> %139, i16 %138, i64 1, !dbg !31 + %141 = bitcast <2 x i16> %140 to i32, !dbg !31 + tail call void asm sideeffect "@$2 st.global.b32 [ $1 + 0 ], { $0 };", "r,l,b"(i32 %141, ptr addrspace(1) %11, i1 true) #4, !dbg !31 + ret void, !dbg !32 +} + +; Function Attrs: mustprogress nocallback nofree nosync nounwind speculatable willreturn memory(none) +declare noundef i32 @llvm.nvvm.read.ptx.sreg.tid.x() #0 + +; Function Attrs: alwaysinline nounwind +define float @__nv_erff(float %a) local_unnamed_addr #1 { +__nv_fabsf.exit: + %0 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4 + %.not = icmp eq i32 %0, 0 + %1 = tail call float @llvm.nvvm.fabs.ftz.f(float %a) #4 + %2 = tail call float @llvm.nvvm.fabs.f(float %a) #4 + %.0 = select i1 %.not, float %2, float %1 + %3 = fcmp oge float %.0, 0x3FF00C1FC0000000 + br i1 %3, label %__nv_fabsf.exit1, label %5 + +__nv_fabsf.exit1: ; preds = %__nv_fabsf.exit + %4 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4 + %.not1 = icmp eq i32 %4, 0 + %.01 = select i1 %.not1, float %2, float %1 + br label %__internal_fmad.exit + +5: ; preds = %__nv_fabsf.exit + %6 = fmul float %a, %a + br label %__internal_fmad.exit + +__internal_fmad.exit: ; preds = %5, %__nv_fabsf.exit1 + %7 = phi float [ 0x3FE41B0840000000, %__nv_fabsf.exit1 ], [ 0x3FC06EBA60000000, %5 ] + %8 = phi float [ 0x3FED526FC0000000, %__nv_fabsf.exit1 ], [ 0xBFD8127580000000, %5 ] + %9 = phi float [ 0x3FC39F20C0000000, %__nv_fabsf.exit1 ], [ 0x3FBCE315E0000000, %5 ] + %10 = phi float [ 0xBFA1902C40000000, %__nv_fabsf.exit1 ], [ 0xBF9B837CE0000000, %5 ] + %11 = phi float [ 0x3F75908160000000, %__nv_fabsf.exit1 ], [ 0x3F755ABD40000000, %5 ] + %12 = phi float [ 0xBF3EAC1720000000, %__nv_fabsf.exit1 ], [ 0xBF4AE9A400000000, %5 ] + %13 = phi float [ 0x3EF1394780000000, %__nv_fabsf.exit1 ], [ 0x3F163D2D40000000, %5 ] + %14 = phi float [ %.01, %__nv_fabsf.exit1 ], [ %6, %5 ] + %15 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4 + %.not2 = icmp eq i32 %15, 0 + %16 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %13, float %14, float %12) #4 + %17 = tail call float @llvm.nvvm.fma.rn.f(float %13, float %14, float %12) #4 + %.02 = select i1 %.not2, float %17, float %16 + %18 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4 + %.not3 = icmp eq i32 %18, 0 + %19 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.02, float %14, float %11) #4 + %20 = tail call float @llvm.nvvm.fma.rn.f(float %.02, float %14, float %11) #4 + %.03 = select i1 %.not3, float %20, float %19 + %21 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4 + %.not4 = icmp eq i32 %21, 0 + %22 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.03, float %14, float %10) #4 + %23 = tail call float @llvm.nvvm.fma.rn.f(float %.03, float %14, float %10) #4 + %.04 = select i1 %.not4, float %23, float %22 + %24 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4 + %.not5 = icmp eq i32 %24, 0 + %25 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.04, float %14, float %9) #4 + %26 = tail call float @llvm.nvvm.fma.rn.f(float %.04, float %14, float %9) #4 + %.05 = select i1 %.not5, float %26, float %25 + %27 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4 + %.not6 = icmp eq i32 %27, 0 + %28 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.05, float %14, float %8) #4 + %29 = tail call float @llvm.nvvm.fma.rn.f(float %.05, float %14, float %8) #4 + %.06 = select i1 %.not6, float %29, float %28 + %30 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4 + %.not7 = icmp eq i32 %30, 0 + %31 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.06, float %14, float %7) #4 + %32 = tail call float @llvm.nvvm.fma.rn.f(float %.06, float %14, float %7) #4 + %.07 = select i1 %.not7, float %32, float %31 + %33 = fneg float %14 + %34 = select i1 %3, float %33, float %a + %35 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #4 + %.not8 = icmp eq i32 %35, 0 + %36 = tail call float @llvm.nvvm.fma.rn.ftz.f(float %.07, float %34, float %34) #4 + %37 = tail call float @llvm.nvvm.fma.rn.f(float %.07, float %34, float %34) #4 + %.08 = select i1 %.not8, float %37, float %36 + br i1 %3, label %38, label %46 + +38: ; preds = %__internal_fmad.exit + %39 = tail call float @llvm.nvvm.ex2.approx.ftz.f(float %.08) #4 + %40 = fsub float 1.000000e+00, %39 + %41 = bitcast float %40 to i32 + %42 = bitcast float %a to i32 + %43 = and i32 %42, -2147483648 + %44 = or i32 %43, %41 + %45 = bitcast i32 %44 to float + br label %46 + +46: ; preds = %38, %__internal_fmad.exit + %r.0 = phi float [ %45, %38 ], [ %.08, %__internal_fmad.exit ] + ret float %r.0 +} + +declare i32 @__nvvm_reflect(ptr) local_unnamed_addr #2 + +; Function Attrs: mustprogress nocallback nofree nosync nounwind speculatable willreturn memory(none) +declare float @llvm.nvvm.fabs.ftz.f(float) #0 + +; Function Attrs: mustprogress nocallback nofree nosync nounwind speculatable willreturn memory(none) +declare float @llvm.nvvm.fabs.f(float) #0 + +; Function Attrs: mustprogress nocallback nofree nosync nounwind speculatable willreturn memory(none) +declare float @llvm.nvvm.fma.rn.ftz.f(float, float, float) #0 + +; Function Attrs: mustprogress nocallback nofree nosync nounwind speculatable willreturn memory(none) +declare float @llvm.nvvm.fma.rn.f(float, float, float) #0 + +; Function Attrs: mustprogress nocallback nofree nosync nounwind willreturn memory(none) +declare float @llvm.nvvm.ex2.approx.ftz.f(float) #3 + +attributes #0 = { mustprogress nocallback nofree nosync nounwind speculatable willreturn memory(none) } +attributes #1 = { alwaysinline nounwind "disable-tail-calls"="false" "frame-pointer"="all" "less-precise-fpmad"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" } +attributes #2 = { "disable-tail-calls"="false" "frame-pointer"="all" "less-precise-fpmad"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" } +attributes #3 = { mustprogress nocallback nofree nosync nounwind willreturn memory(none) } +attributes #4 = { nounwind } + +!llvm.module.flags = !{!0, !1} +!llvm.dbg.cu = !{!2} +!nvvm.annotations = !{!4, !5, !5, !4} +!llvm.ident = !{!6} + +!0 = !{i32 2, !"Debug Info Version", i32 3} +!1 = !{i32 4, !"nvvm-reflect-ftz", i32 1} +!2 = distinct !DICompileUnit(language: DW_LANG_C, file: !3, producer: "triton", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug) +!3 = !DIFile(filename: "c5jxaguxho3nhrlt5vcinnz5fevodumlpwn4wyb2vx3xrveicerl.py", directory: "/tmp/torchinductor_root/5j") +!4 = !{ptr @triton__0d1d2de, !"kernel", i32 1} +!5 = !{ptr @triton__0d1d2de, !"maxntidx", i32 256} +!6 = !{!"clang version 3.8.0 (tags/RELEASE_380/final)"} +!7 = distinct !DISubprogram(name: "triton__0d1d2de", linkageName: "triton__0d1d2de", scope: !3, file: !3, line: 18, type: !8, scopeLine: 18, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !2) +!8 = !DISubroutineType(cc: DW_CC_normal, types: !9) +!9 = !{} +!10 = !DILocation(line: 21, column: 36, scope: !7) +!11 = !DILocation(line: 20, column: 28, scope: !7) +!12 = !DILocation(line: 20, column: 33, scope: !7) +!13 = !DILocation(line: 21, column: 23, scope: !7) +!14 = !DILocation(line: 24, column: 34, scope: !7) +!15 = !DILocation(line: 24, column: 39, scope: !7) +!16 = !DILocation(line: 24, column: 48, scope: !7) +!17 = !DILocation(line: 25, column: 30, scope: !7) +!18 = !DILocation(line: 25, column: 35, scope: !7) +!19 = !DILocation(line: 25, column: 44, scope: !7) +!20 = !DILocation(line: 29, column: 18, scope: !7) +!21 = !DILocation(line: 30, column: 23, scope: !7) +!22 = !DILocation(line: 32, column: 18, scope: !7) +!23 = !DILocation(line: 34, column: 19, scope: !7) +!24 = !DILocation(line: 35, column: 19, scope: !7) +!25 = !DILocation(line: 37, column: 20, scope: !7) +!26 = !DILocation(line: 38, column: 19, scope: !7) +!27 = !DILocation(line: 40, column: 20, scope: !7) +!28 = !DILocation(line: 41, column: 19, scope: !7) +!29 = !DILocation(line: 42, column: 20, scope: !7) +!30 = !DILocation(line: 43, column: 19, scope: !7) +!31 = !DILocation(line: 45, column: 40, scope: !7) +!32 = !DILocation(line: 45, column: 4, scope: !7) diff --git a/.triton/dump/4d7b96448927b8146af43cb9f39e0544/triton_.ptx b/.triton/dump/4d7b96448927b8146af43cb9f39e0544/triton_.ptx new file mode 100644 index 0000000000000000000000000000000000000000..adf9d7e80cd21614d3a9a373b50cd05d52262789 --- /dev/null +++ b/.triton/dump/4d7b96448927b8146af43cb9f39e0544/triton_.ptx @@ -0,0 +1,486 @@ +// +// Generated by LLVM NVPTX Back-End +// + +.version 8.2 +.target sm_89 +.address_size 64 + + // .globl triton__0d1d2de +.global .align 1 .b8 _$_str[11] = {95, 95, 67, 85, 68, 65, 95, 70, 84, 90, 0}; + +.visible .entry triton__0d1d2de( + .param .u64 triton__0d1d2de_param_0, + .param .u64 triton__0d1d2de_param_1, + .param .u32 triton__0d1d2de_param_2 +) +.maxntid 256, 1, 1 +{ + .reg .pred %p<10>; + .reg .b16 %rs<7>; + .reg .b32 %r<25>; + .reg .f32 %f<127>; + .reg .b64 %rd<8>; + .loc 1 18 0 +$L__func_begin0: + .loc 1 18 0 + + ld.param.u64 %rd4, [triton__0d1d2de_param_0]; + ld.param.u64 %rd5, [triton__0d1d2de_param_1]; +$L__tmp0: + .loc 1 21 36 + mov.u32 %r8, %tid.x; + shl.b32 %r9, %r8, 1; + and.b32 %r10, %r9, 510; + .loc 1 20 28 + mov.u32 %r1, %ctaid.x; + .loc 1 20 33 + shl.b32 %r11, %r1, 9; + .loc 1 21 23 + or.b32 %r12, %r11, %r10; + .loc 1 24 34 + mul.wide.s32 %rd6, %r12, 2; + add.s64 %rd7, %rd4, %rd6; + mov.pred %p1, -1; + .loc 1 24 39 + mov.u32 %r2, 0x0; + @%p1 ld.global.b32 { %r2 }, [ %rd7 + 0 ]; + .loc 1 25 30 + add.s64 %rd3, %rd5, %rd6; + .loc 1 25 35 + mov.u32 %r5, 0x0; + @%p1 ld.global.b32 { %r5 }, [ %rd3 + 0 ]; + cvt.u16.u32 %rs3, %r5; + { .reg .b16 tmp; mov.b32 {tmp, %rs4}, %r5; } + .loc 1 25 44 + cvt.f32.bf16 %r6, %rs3; + mov.b32 %f3, %r6; + cvt.f32.bf16 %r7, %rs4; + mov.b32 %f4, %r7; + .loc 1 29 18 + mul.f32 %f5, %f3, 0f3F3504F3; + .loc 1 30 23 + abs.ftz.f32 %f7, %f5; + setp.ge.f32 %p3, %f7, 0f3F8060FE; + mov.f32 %f115, 0f3789CA3C; + mov.f32 %f114, 0fB9F560B9; + mov.f32 %f113, 0f3BAC840B; + mov.f32 %f112, 0fBD0C8162; + mov.f32 %f111, 0f3E1CF906; + mov.f32 %f110, 0f3F6A937E; + mov.f32 %f109, 0f3F20D842; + mov.f32 %f116, %f7; + @%p3 bra $L__BB0_2; + .loc 1 0 23 + mov.f32 %f115, 0f38B1E96A; + mov.f32 %f114, 0fBA574D20; + mov.f32 %f113, 0f3BAAD5EA; + mov.f32 %f112, 0fBCDC1BE7; + mov.f32 %f111, 0f3DE718AF; + mov.f32 %f110, 0fBEC093AC; + mov.f32 %f109, 0f3E0375D3; + .loc 1 30 23 + mul.f32 %f116, %f5, %f5; +$L__BB0_2: + .loc 1 0 0 + cvt.u16.u32 %rs1, %r2; + { .reg .b16 tmp; mov.b32 {tmp, %rs2}, %r2; } + mul.f32 %f6, %f4, 0f3F3504F3; + .loc 1 30 23 + setp.ltu.f32 %p4, %f7, 0f3F8060FE; + fma.rn.ftz.f32 %f47, %f115, %f116, %f114; + fma.rn.ftz.f32 %f48, %f47, %f116, %f113; + fma.rn.ftz.f32 %f49, %f48, %f116, %f112; + fma.rn.ftz.f32 %f50, %f49, %f116, %f111; + fma.rn.ftz.f32 %f51, %f50, %f116, %f110; + fma.rn.ftz.f32 %f52, %f51, %f116, %f109; + neg.f32 %f53, %f116; + selp.f32 %f54, %f53, %f5, %p3; + fma.rn.ftz.f32 %f117, %f52, %f54, %f54; + mov.f32 %f108, 0f3F800000; + @%p4 bra $L__BB0_4; + ex2.approx.ftz.f32 %f55, %f117; + sub.f32 %f57, %f108, %f55; + mov.b32 %r13, %f57; + mov.b32 %r14, %f5; + and.b32 %r15, %r14, -2147483648; + or.b32 %r16, %r15, %r13; + mov.b32 %f117, %r16; +$L__BB0_4: + .loc 1 0 0 + cvt.f32.bf16 %r3, %rs1; + cvt.f32.bf16 %r4, %rs2; + .loc 1 30 23 + abs.ftz.f32 %f20, %f6; + setp.ge.f32 %p6, %f20, 0f3F8060FE; + mov.f32 %f124, 0f3789CA3C; + mov.f32 %f123, 0fB9F560B9; + mov.f32 %f122, 0f3BAC840B; + mov.f32 %f121, 0fBD0C8162; + mov.f32 %f120, 0f3E1CF906; + mov.f32 %f119, 0f3F6A937E; + mov.f32 %f118, 0f3F20D842; + mov.f32 %f125, %f20; + @%p6 bra $L__BB0_6; + mul.f32 %f125, %f6, %f6; + mov.f32 %f124, 0f38B1E96A; + mov.f32 %f123, 0fBA574D20; + mov.f32 %f122, 0f3BAAD5EA; + mov.f32 %f121, 0fBCDC1BE7; + mov.f32 %f120, 0f3DE718AF; + mov.f32 %f119, 0fBEC093AC; + mov.f32 %f118, 0f3E0375D3; +$L__BB0_6: + .loc 1 0 0 + mov.b32 %f1, %r3; + mov.b32 %f2, %r4; + .loc 1 30 23 + setp.ltu.f32 %p7, %f20, 0f3F8060FE; + fma.rn.ftz.f32 %f72, %f124, %f125, %f123; + fma.rn.ftz.f32 %f73, %f72, %f125, %f122; + fma.rn.ftz.f32 %f74, %f73, %f125, %f121; + fma.rn.ftz.f32 %f75, %f74, %f125, %f120; + fma.rn.ftz.f32 %f76, %f75, %f125, %f119; + fma.rn.ftz.f32 %f77, %f76, %f125, %f118; + neg.f32 %f78, %f125; + selp.f32 %f79, %f78, %f6, %p6; + fma.rn.ftz.f32 %f126, %f77, %f79, %f79; + @%p7 bra $L__BB0_8; + ex2.approx.ftz.f32 %f80, %f126; + sub.f32 %f82, %f108, %f80; + mov.b32 %r17, %f82; + mov.b32 %r18, %f6; + and.b32 %r19, %r18, -2147483648; + or.b32 %r20, %r19, %r17; + mov.b32 %f126, %r20; +$L__BB0_8: + .loc 1 32 18 + add.f32 %f87, %f117, 0f3F800000; + add.f32 %f88, %f126, 0f3F800000; + .loc 1 35 19 + mul.f32 %f89, %f3, %f3; + mul.f32 %f90, %f4, %f4; + .loc 1 37 20 + mul.f32 %f91, %f89, 0fBF000000; + mul.f32 %f92, %f90, 0fBF000000; + .loc 1 38 19 + mul.f32 %f84, %f91, 0f3FB8AA3B; + ex2.approx.f32 %f83, %f84; + mul.f32 %f86, %f92, 0f3FB8AA3B; + ex2.approx.f32 %f85, %f86; + .loc 1 40 20 + mul.f32 %f93, %f83, 0f3ECC422A; + mul.f32 %f94, %f85, 0f3ECC422A; + .loc 1 41 19 + mul.f32 %f95, %f3, %f93; + mul.f32 %f96, %f4, %f94; + .loc 1 42 20 + fma.rn.f32 %f97, %f87, 0f3F000000, %f95; + fma.rn.f32 %f98, %f88, 0f3F000000, %f96; + .loc 1 43 19 + mul.f32 %f99, %f1, %f97; + mul.f32 %f100, %f2, %f98; + .loc 1 45 40 + mov.b32 %r21, %f99; + cvt.rn.bf16.f32 %rs5, %r21; + mov.b32 %r22, %f100; + cvt.rn.bf16.f32 %rs6, %r22; + mov.b32 %r24, {%rs5, %rs6}; + @%p1 st.global.b32 [ %rd7 + 0 ], { %r24 }; + .loc 1 45 4 + ret; +$L__tmp1: +$L__func_end0: + +} + // .globl __nv_erff +.visible .func (.param .b32 func_retval0) __nv_erff( + .param .b32 __nv_erff_param_0 +) +{ + .reg .pred %p<4>; + .reg .b32 %r<5>; + .reg .f32 %f<49>; +$L__func_begin1: + + ld.param.f32 %f14, [__nv_erff_param_0]; + abs.ftz.f32 %f1, %f14; + setp.ge.f32 %p1, %f1, 0f3F8060FE; + mov.f32 %f46, 0f3789CA3C; + mov.f32 %f45, 0fB9F560B9; + mov.f32 %f44, 0f3BAC840B; + mov.f32 %f43, 0fBD0C8162; + mov.f32 %f42, 0f3E1CF906; + mov.f32 %f41, 0f3F6A937E; + mov.f32 %f40, 0f3F20D842; + mov.f32 %f47, %f1; + @%p1 bra $L__BB1_2; + mul.f32 %f47, %f14, %f14; + mov.f32 %f46, 0f38B1E96A; + mov.f32 %f45, 0fBA574D20; + mov.f32 %f44, 0f3BAAD5EA; + mov.f32 %f43, 0fBCDC1BE7; + mov.f32 %f42, 0f3DE718AF; + mov.f32 %f41, 0fBEC093AC; + mov.f32 %f40, 0f3E0375D3; +$L__BB1_2: + setp.ltu.f32 %p2, %f1, 0f3F8060FE; + fma.rn.ftz.f32 %f29, %f46, %f47, %f45; + fma.rn.ftz.f32 %f30, %f29, %f47, %f44; + fma.rn.ftz.f32 %f31, %f30, %f47, %f43; + fma.rn.ftz.f32 %f32, %f31, %f47, %f42; + fma.rn.ftz.f32 %f33, %f32, %f47, %f41; + fma.rn.ftz.f32 %f34, %f33, %f47, %f40; + neg.f32 %f35, %f47; + selp.f32 %f36, %f35, %f14, %p1; + fma.rn.ftz.f32 %f48, %f34, %f36, %f36; + @%p2 bra $L__BB1_4; + ex2.approx.ftz.f32 %f37, %f48; + mov.f32 %f38, 0f3F800000; + sub.f32 %f39, %f38, %f37; + mov.b32 %r1, %f39; + mov.b32 %r2, %f14; + and.b32 %r3, %r2, -2147483648; + or.b32 %r4, %r3, %r1; + mov.b32 %f48, %r4; +$L__BB1_4: + st.param.f32 [func_retval0+0], %f48; + ret; +$L__func_end1: + +} + .file 1 "/tmp/torchinductor_root/5j/c5jxaguxho3nhrlt5vcinnz5fevodumlpwn4wyb2vx3xrveicerl.py" + .section .debug_abbrev + { +.b8 1 +.b8 17 +.b8 1 +.b8 37 +.b8 8 +.b8 19 +.b8 5 +.b8 3 +.b8 8 +.b8 16 +.b8 6 +.b8 27 +.b8 8 +.b8 180 +.b8 66 +.b8 12 +.b8 17 +.b8 1 +.b8 18 +.b8 1 +.b8 0 +.b8 0 +.b8 2 +.b8 46 +.b8 0 +.b8 17 +.b8 1 +.b8 18 +.b8 1 +.b8 64 +.b8 10 +.b8 135 +.b8 64 +.b8 8 +.b8 3 +.b8 8 +.b8 58 +.b8 11 +.b8 59 +.b8 11 +.b8 63 +.b8 12 +.b8 0 +.b8 0 +.b8 0 + } + .section .debug_info + { +.b32 176 +.b8 2 +.b8 0 +.b32 .debug_abbrev +.b8 8 +.b8 1 +.b8 116 +.b8 114 +.b8 105 +.b8 116 +.b8 111 +.b8 110 +.b8 0 +.b8 2 +.b8 0 +.b8 99 +.b8 53 +.b8 106 +.b8 120 +.b8 97 +.b8 103 +.b8 117 +.b8 120 +.b8 104 +.b8 111 +.b8 51 +.b8 110 +.b8 104 +.b8 114 +.b8 108 +.b8 116 +.b8 53 +.b8 118 +.b8 99 +.b8 105 +.b8 110 +.b8 110 +.b8 122 +.b8 53 +.b8 102 +.b8 101 +.b8 118 +.b8 111 +.b8 100 +.b8 117 +.b8 109 +.b8 108 +.b8 112 +.b8 119 +.b8 110 +.b8 52 +.b8 119 +.b8 121 +.b8 98 +.b8 50 +.b8 118 +.b8 120 +.b8 51 +.b8 120 +.b8 114 +.b8 118 +.b8 101 +.b8 105 +.b8 99 +.b8 101 +.b8 114 +.b8 108 +.b8 46 +.b8 112 +.b8 121 +.b8 0 +.b32 .debug_line +.b8 47 +.b8 116 +.b8 109 +.b8 112 +.b8 47 +.b8 116 +.b8 111 +.b8 114 +.b8 99 +.b8 104 +.b8 105 +.b8 110 +.b8 100 +.b8 117 +.b8 99 +.b8 116 +.b8 111 +.b8 114 +.b8 95 +.b8 114 +.b8 111 +.b8 111 +.b8 116 +.b8 47 +.b8 53 +.b8 106 +.b8 0 +.b8 1 +.b64 $L__func_begin0 +.b64 $L__func_end0 +.b8 2 +.b64 $L__func_begin0 +.b64 $L__func_end0 +.b8 1 +.b8 156 +.b8 116 +.b8 114 +.b8 105 +.b8 116 +.b8 111 +.b8 110 +.b8 95 +.b8 95 +.b8 48 +.b8 100 +.b8 49 +.b8 100 +.b8 50 +.b8 100 +.b8 101 +.b8 0 +.b8 116 +.b8 114 +.b8 105 +.b8 116 +.b8 111 +.b8 110 +.b8 95 +.b8 95 +.b8 48 +.b8 100 +.b8 49 +.b8 100 +.b8 50 +.b8 100 +.b8 101 +.b8 0 +.b8 1 +.b8 18 +.b8 1 +.b8 0 + } + .section .debug_pubnames + { +.b32 $L__pubNames_end0-$L__pubNames_start0 +$L__pubNames_start0: +.b8 2 +.b8 0 +.b32 .debug_info +.b32 180 +.b32 125 +.b8 116 +.b8 114 +.b8 105 +.b8 116 +.b8 111 +.b8 110 +.b8 95 +.b8 95 +.b8 48 +.b8 100 +.b8 49 +.b8 100 +.b8 50 +.b8 100 +.b8 101 +.b8 0 +.b32 0 +$L__pubNames_end0: + } + .section .debug_pubtypes + { +.b32 $L__pubTypes_end0-$L__pubTypes_start0 +$L__pubTypes_start0: +.b8 2 +.b8 0 +.b32 .debug_info +.b32 180 +.b32 0 +$L__pubTypes_end0: + } + .section .debug_loc { } diff --git a/.triton/dump/4d7b96448927b8146af43cb9f39e0544/triton_.ttgir b/.triton/dump/4d7b96448927b8146af43cb9f39e0544/triton_.ttgir new file mode 100644 index 0000000000000000000000000000000000000000..11cb1f8079ff9ee53ca610feb409d72bab077850 --- /dev/null +++ b/.triton/dump/4d7b96448927b8146af43cb9f39e0544/triton_.ttgir @@ -0,0 +1,38 @@ +#blocked = #triton_gpu.blocked<{sizePerThread = [2], threadsPerWarp = [32], warpsPerCTA = [8], order = [0], CTAsPerCGA = [1], CTASplitNum = [1], CTAOrder = [0]}> +module attributes {"triton_gpu.compute-capability" = 89 : i32, "triton_gpu.num-ctas" = 1 : i32, "triton_gpu.num-warps" = 8 : i32, "triton_gpu.threads-per-warp" = 32 : i32} { + tt.func public @triton__0d1d2de(%arg0: !tt.ptr {tt.divisibility = 16 : i32}, %arg1: !tt.ptr {tt.divisibility = 16 : i32}, %arg2: i32 {tt.divisibility = 16 : i32, tt.max_divisibility = 16 : i32}) attributes {noinline = false} { + %cst = arith.constant dense<0.398942292> : tensor<512xf32, #blocked> + %cst_0 = arith.constant dense<-5.000000e-01> : tensor<512xf32, #blocked> + %cst_1 = arith.constant dense<5.000000e-01> : tensor<512xf32, #blocked> + %cst_2 = arith.constant dense<1.000000e+00> : tensor<512xf32, #blocked> + %cst_3 = arith.constant dense<0.707106769> : tensor<512xf32, #blocked> + %c512_i32 = arith.constant 512 : i32 + %0 = tt.get_program_id x : i32 + %1 = arith.muli %0, %c512_i32 : i32 + %2 = tt.make_range {end = 512 : i32, start = 0 : i32} : tensor<512xi32, #blocked> + %3 = tt.splat %1 : (i32) -> tensor<512xi32, #blocked> + %4 = arith.addi %3, %2 : tensor<512xi32, #blocked> + %5 = tt.splat %arg0 : (!tt.ptr) -> tensor<512x!tt.ptr, #blocked> + %6 = tt.addptr %5, %4 : tensor<512x!tt.ptr, #blocked>, tensor<512xi32, #blocked> + %7 = tt.load %6 {cache = 1 : i32, evict = 1 : i32, isVolatile = false} : tensor<512xbf16, #blocked> + %8 = arith.extf %7 : tensor<512xbf16, #blocked> to tensor<512xf32, #blocked> + %9 = tt.splat %arg1 : (!tt.ptr) -> tensor<512x!tt.ptr, #blocked> + %10 = tt.addptr %9, %4 : tensor<512x!tt.ptr, #blocked>, tensor<512xi32, #blocked> + %11 = tt.load %10 {cache = 1 : i32, evict = 1 : i32, isVolatile = false} : tensor<512xbf16, #blocked> + %12 = arith.extf %11 : tensor<512xbf16, #blocked> to tensor<512xf32, #blocked> + %13 = arith.mulf %12, %cst_3 : tensor<512xf32, #blocked> + %14 = tt.extern_elementwise %13 {libname = "libdevice", libpath = "/usr/local/lib/python3.10/dist-packages/triton/language/../third_party/cuda/lib/libdevice.10.bc", pure = true, symbol = "__nv_erff"} : (tensor<512xf32, #blocked>) -> tensor<512xf32, #blocked> + %15 = arith.addf %14, %cst_2 : tensor<512xf32, #blocked> + %16 = arith.mulf %15, %cst_1 : tensor<512xf32, #blocked> + %17 = arith.mulf %12, %12 : tensor<512xf32, #blocked> + %18 = arith.mulf %17, %cst_0 : tensor<512xf32, #blocked> + %19 = math.exp %18 : tensor<512xf32, #blocked> + %20 = arith.mulf %19, %cst : tensor<512xf32, #blocked> + %21 = arith.mulf %12, %20 : tensor<512xf32, #blocked> + %22 = arith.addf %16, %21 : tensor<512xf32, #blocked> + %23 = arith.mulf %8, %22 : tensor<512xf32, #blocked> + %24 = arith.truncf %23 : tensor<512xf32, #blocked> to tensor<512xbf16, #blocked> + tt.store %6, %24 {cache = 1 : i32, evict = 1 : i32} : tensor<512xbf16, #blocked> + tt.return + } +} diff --git a/.triton/dump/4d7b96448927b8146af43cb9f39e0544/triton_.ttir b/.triton/dump/4d7b96448927b8146af43cb9f39e0544/triton_.ttir new file mode 100644 index 0000000000000000000000000000000000000000..cb9125176de501ceec8230e4435035948c5a5ea8 --- /dev/null +++ b/.triton/dump/4d7b96448927b8146af43cb9f39e0544/triton_.ttir @@ -0,0 +1,37 @@ +module { + tt.func public @triton__0d1d2de(%arg0: !tt.ptr {tt.divisibility = 16 : i32}, %arg1: !tt.ptr {tt.divisibility = 16 : i32}, %arg2: i32 {tt.divisibility = 16 : i32, tt.max_divisibility = 16 : i32}) attributes {noinline = false} { + %cst = arith.constant dense<0.398942292> : tensor<512xf32> + %cst_0 = arith.constant dense<-5.000000e-01> : tensor<512xf32> + %cst_1 = arith.constant dense<5.000000e-01> : tensor<512xf32> + %cst_2 = arith.constant dense<1.000000e+00> : tensor<512xf32> + %cst_3 = arith.constant dense<0.707106769> : tensor<512xf32> + %c512_i32 = arith.constant 512 : i32 + %0 = tt.get_program_id x : i32 + %1 = arith.muli %0, %c512_i32 : i32 + %2 = tt.make_range {end = 512 : i32, start = 0 : i32} : tensor<512xi32> + %3 = tt.splat %1 : (i32) -> tensor<512xi32> + %4 = arith.addi %3, %2 : tensor<512xi32> + %5 = tt.splat %arg0 : (!tt.ptr) -> tensor<512x!tt.ptr> + %6 = tt.addptr %5, %4 : tensor<512x!tt.ptr>, tensor<512xi32> + %7 = tt.load %6 {cache = 1 : i32, evict = 1 : i32, isVolatile = false} : tensor<512xbf16> + %8 = arith.extf %7 : tensor<512xbf16> to tensor<512xf32> + %9 = tt.splat %arg1 : (!tt.ptr) -> tensor<512x!tt.ptr> + %10 = tt.addptr %9, %4 : tensor<512x!tt.ptr>, tensor<512xi32> + %11 = tt.load %10 {cache = 1 : i32, evict = 1 : i32, isVolatile = false} : tensor<512xbf16> + %12 = arith.extf %11 : tensor<512xbf16> to tensor<512xf32> + %13 = arith.mulf %12, %cst_3 : tensor<512xf32> + %14 = tt.extern_elementwise %13 {libname = "libdevice", libpath = "/usr/local/lib/python3.10/dist-packages/triton/language/../third_party/cuda/lib/libdevice.10.bc", pure = true, symbol = "__nv_erff"} : (tensor<512xf32>) -> tensor<512xf32> + %15 = arith.addf %14, %cst_2 : tensor<512xf32> + %16 = arith.mulf %15, %cst_1 : tensor<512xf32> + %17 = arith.mulf %12, %12 : tensor<512xf32> + %18 = arith.mulf %17, %cst_0 : tensor<512xf32> + %19 = math.exp %18 : tensor<512xf32> + %20 = arith.mulf %19, %cst : tensor<512xf32> + %21 = arith.mulf %12, %20 : tensor<512xf32> + %22 = arith.addf %16, %21 : tensor<512xf32> + %23 = arith.mulf %8, %22 : tensor<512xf32> + %24 = arith.truncf %23 : tensor<512xf32> to tensor<512xbf16> + tt.store %6, %24 {cache = 1 : i32, evict = 1 : i32} : tensor<512xbf16> + tt.return + } +} diff --git a/.triton/dump/645565eaba0a18dd23ef200fe9abb0c0/triton_.cubin b/.triton/dump/645565eaba0a18dd23ef200fe9abb0c0/triton_.cubin new file mode 100644 index 0000000000000000000000000000000000000000..f62526a0aa9f8cffb536fe04675a4bd67b0dae69 Binary files /dev/null and b/.triton/dump/645565eaba0a18dd23ef200fe9abb0c0/triton_.cubin differ diff --git a/.triton/dump/645565eaba0a18dd23ef200fe9abb0c0/triton_.ptx b/.triton/dump/645565eaba0a18dd23ef200fe9abb0c0/triton_.ptx new file mode 100644 index 0000000000000000000000000000000000000000..2824d50803c2a88fef96f5be7fd9b36e56f64edf --- /dev/null +++ b/.triton/dump/645565eaba0a18dd23ef200fe9abb0c0/triton_.ptx @@ -0,0 +1,834 @@ +// +// Generated by LLVM NVPTX Back-End +// + +.version 8.2 +.target sm_89 +.address_size 64 + + // .globl triton__0d1d2d3d4d5d6d7d8de9de +.extern .func __assertfail +( + .param .b64 __assertfail_param_0, + .param .b64 __assertfail_param_1, + .param .b32 __assertfail_param_2, + .param .b64 __assertfail_param_3, + .param .b64 __assertfail_param_4 +) +; +.global .align 1 .b8 assertFunc_0[25] = {95, 99, 97, 108, 108, 95, 119, 105, 116, 104, 95, 102, 114, 97, 109, 101, 115, 95, 114, 101, 109, 111, 118, 101, 100}; +.global .align 1 .b8 assertFile_0[38] = {60, 102, 114, 111, 122, 101, 110, 32, 105, 109, 112, 111, 114, 116, 108, 105, 98, 46, 95, 98, 111, 111, 116, 115, 116, 114, 97, 112, 95, 101, 120, 116, 101, 114, 110, 97, 108, 62}; +.global .align 1 .b8 assertMessage_0[38] = {105, 110, 100, 101, 120, 32, 111, 117, 116, 32, 111, 102, 32, 98, 111, 117, 110, 100, 115, 58, 32, 48, 32, 60, 61, 32, 116, 109, 112, 51, 32, 60, 32, 53, 48, 50, 53, 55}; +.extern .shared .align 1 .b8 global_smem[]; +.global .align 1 .b8 _$_str[11] = {95, 95, 67, 85, 68, 65, 95, 70, 84, 90, 0}; + +.visible .entry triton__0d1d2d3d4d5d6d7d8de9de( + .param .u64 triton__0d1d2d3d4d5d6d7d8de9de_param_0, + .param .u64 triton__0d1d2d3d4d5d6d7d8de9de_param_1, + .param .u64 triton__0d1d2d3d4d5d6d7d8de9de_param_2, + .param .u64 triton__0d1d2d3d4d5d6d7d8de9de_param_3, + .param .u64 triton__0d1d2d3d4d5d6d7d8de9de_param_4, + .param .u64 triton__0d1d2d3d4d5d6d7d8de9de_param_5, + .param .u64 triton__0d1d2d3d4d5d6d7d8de9de_param_6, + .param .u64 triton__0d1d2d3d4d5d6d7d8de9de_param_7, + .param .u32 triton__0d1d2d3d4d5d6d7d8de9de_param_8, + .param .u32 triton__0d1d2d3d4d5d6d7d8de9de_param_9 +) +.maxntid 64, 1, 1 +{ + .reg .pred %p<36>; + .reg .b16 %rs<5>; + .reg .b32 %r<109>; + .reg .f32 %f<70>; + .reg .b64 %rd<49>; + .loc 1 18 0 +$L__func_begin0: + .loc 1 18 0 + + ld.param.u64 %rd8, [triton__0d1d2d3d4d5d6d7d8de9de_param_7]; + ld.param.u64 %rd7, [triton__0d1d2d3d4d5d6d7d8de9de_param_6]; + ld.param.u64 %rd6, [triton__0d1d2d3d4d5d6d7d8de9de_param_5]; + ld.param.u64 %rd5, [triton__0d1d2d3d4d5d6d7d8de9de_param_2]; + ld.param.u64 %rd4, [triton__0d1d2d3d4d5d6d7d8de9de_param_0]; +$L__tmp0: + .loc 1 26 26 + mov.u32 %r1, %tid.x; + ld.param.u64 %rd21, [triton__0d1d2d3d4d5d6d7d8de9de_param_1]; + and.b32 %r2, %r1, 63; + shl.b32 %r28, %r2, 2; + ld.param.u64 %rd22, [triton__0d1d2d3d4d5d6d7d8de9de_param_3]; + ld.param.u64 %rd23, [triton__0d1d2d3d4d5d6d7d8de9de_param_4]; + .loc 1 23 28 + mov.u32 %r11, %ctaid.x; + .loc 1 30 18 + shr.s32 %r29, %r11, 31; + shr.u32 %r30, %r29, 23; + add.s32 %r31, %r11, %r30; + and.b32 %r32, %r31, 16776704; + sub.s32 %r33, %r11, %r32; + .loc 1 31 30 + cvt.s64.s32 %rd1, %r11; + mul.wide.s32 %rd24, %r11, 8; + add.s64 %rd10, %rd21, %rd24; + mov.pred %p18, -1; + .loc 1 31 35 + mov.u64 %rd9, 0x0; + @%p18 ld.global.L1::evict_last.b64 { %rd9 }, [ %rd10 + 0 ]; + mov.u64 %rd11, 0x0; + @%p18 ld.global.L1::evict_last.b64 { %rd11 }, [ %rd10 + 0 ]; + mov.u64 %rd13, 0x0; + @%p18 ld.global.L1::evict_last.b64 { %rd13 }, [ %rd10 + 0 ]; + mov.u64 %rd15, 0x0; + @%p18 ld.global.L1::evict_last.b64 { %rd15 }, [ %rd10 + 0 ]; + mov.u64 %rd17, 0x0; + @%p18 ld.global.L1::evict_last.b64 { %rd17 }, [ %rd10 + 0 ]; + .loc 1 32 40 + shl.b32 %r34, %r33, 8; + .loc 1 32 36 + or.b32 %r35, %r34, %r28; + .loc 1 32 30 + mul.wide.s32 %rd25, %r35, 4; + add.s64 %rd19, %rd22, %rd25; + mov.b32 %r41, 0; + .loc 1 32 46 + mov.u32 %r12, 0x0; + mov.u32 %r13, 0x0; + mov.u32 %r14, 0x0; + mov.u32 %r15, 0x0; + @%p18 ld.global.L1::evict_last.v4.b32 { %r12, %r13, %r14, %r15 }, [ %rd19 + 0 ]; + @!%p18 mov.u32 %r12, %r41; + @!%p18 mov.u32 %r13, %r41; + @!%p18 mov.u32 %r14, %r41; + @!%p18 mov.u32 %r15, %r41; + .loc 1 33 31 + cvt.u64.u32 %rd3, %r28; + mul.wide.u32 %rd26, %r28, 4; + add.s64 %rd20, %rd23, %rd26; + .loc 1 33 36 + mov.u32 %r20, 0x0; + mov.u32 %r21, 0x0; + mov.u32 %r22, 0x0; + mov.u32 %r23, 0x0; + @%p18 ld.global.L1::evict_last.v4.b32 { %r20, %r21, %r22, %r23 }, [ %rd20 + 0 ]; + @!%p18 mov.u32 %r20, %r41; + @!%p18 mov.u32 %r21, %r41; + @!%p18 mov.u32 %r22, %r41; + @!%p18 mov.u32 %r23, %r41; + .loc 1 34 18 + add.s64 %rd27, %rd17, 50257; + .loc 1 35 18 + setp.lt.s64 %p16, %rd17, 0; + .loc 1 36 32 + selp.b64 %rd28, %rd27, %rd17, %p16; + .loc 1 37 36 + setp.lt.u64 %p17, %rd28, 50257; + .loc 1 37 51 + @%p17 bra $L__BB0_2; + mov.u64 %rd29, assertMessage_0; + cvta.global.u64 %rd30, %rd29; + mov.u64 %rd31, assertFile_0; + cvta.global.u64 %rd32, %rd31; + mov.u64 %rd33, assertFunc_0; + cvta.global.u64 %rd34, %rd33; + mov.b32 %r36, 883; + mov.u64 %rd35, 1; + { // callseq 0, 0 + .reg .b32 temp_param_reg; + .param .b64 param0; + st.param.b64 [param0+0], %rd30; + .param .b64 param1; + st.param.b64 [param1+0], %rd32; + .param .b32 param2; + st.param.b32 [param2+0], %r36; + .param .b64 param3; + st.param.b64 [param3+0], %rd34; + .param .b64 param4; + st.param.b64 [param4+0], %rd35; + call.uni + __assertfail, + ( + param0, + param1, + param2, + param3, + param4 + ); + } // callseq 0 +$L__BB0_2: + .loc 1 35 18 + setp.lt.s64 %p33, %rd9, 0; + .loc 1 26 26 + and.b32 %r75, %r1, 31; + .loc 1 38 40 + shl.b64 %rd41, %rd9, 8; + add.s64 %rd42, %rd41, 12865792; + selp.b64 %rd43, %rd42, %rd41, %p33; + .loc 1 38 36 + or.b64 %rd44, %rd43, %rd3; + .loc 1 38 30 + shl.b64 %rd45, %rd44, 2; + add.s64 %rd36, %rd5, %rd45; + .loc 1 38 48 + mov.u32 %r37, 0x0; + mov.u32 %r38, 0x0; + mov.u32 %r39, 0x0; + mov.u32 %r40, 0x0; + @%p18 ld.global.v4.b32 { %r37, %r38, %r39, %r40 }, [ %rd36 + 0 ]; + @!%p18 mov.u32 %r37, %r41; + @!%p18 mov.u32 %r38, %r41; + @!%p18 mov.u32 %r39, %r41; + @!%p18 mov.u32 %r40, %r41; + .loc 1 32 46 + mov.b32 %f1, %r12; + mov.b32 %f2, %r13; + .loc 1 38 48 + mov.b32 %f3, %r37; + mov.b32 %f4, %r38; + .loc 1 39 18 + add.f32 %f5, %f2, %f4; + mov.b32 %r64, %f5; + add.f32 %f6, %f1, %f3; + .loc 1 32 46 + mov.b32 %f7, %r15; + mov.b32 %f8, %r14; + .loc 1 38 48 + mov.b32 %f9, %r40; + mov.b32 %f10, %r39; + .loc 1 39 18 + add.f32 %f11, %f8, %f10; + mov.b32 %r65, %f11; + add.f32 %f12, %f7, %f9; +$L__tmp1: + .loc 2 233 15 + add.f32 %f13, %f6, %f5; + add.f32 %f14, %f11, %f13; + add.f32 %f15, %f12, %f14; +$L__tmp2: + .loc 2 243 36 + mov.b32 %r76, %f15; + shfl.sync.bfly.b32 %r77, %r76, 16, 31, -1; + mov.b32 %f16, %r77; +$L__tmp3: + .loc 2 233 15 + add.f32 %f17, %f15, %f16; +$L__tmp4: + .loc 2 243 36 + mov.b32 %r78, %f17; + shfl.sync.bfly.b32 %r79, %r78, 8, 31, -1; + mov.b32 %f18, %r79; +$L__tmp5: + .loc 2 233 15 + add.f32 %f19, %f17, %f18; +$L__tmp6: + .loc 2 243 36 + mov.b32 %r80, %f19; + shfl.sync.bfly.b32 %r81, %r80, 4, 31, -1; + mov.b32 %f20, %r81; +$L__tmp7: + .loc 2 233 15 + add.f32 %f21, %f19, %f20; +$L__tmp8: + .loc 2 243 36 + mov.b32 %r82, %f21; + shfl.sync.bfly.b32 %r83, %r82, 2, 31, -1; + mov.b32 %f22, %r83; +$L__tmp9: + .loc 2 233 15 + add.f32 %f23, %f21, %f22; +$L__tmp10: + .loc 2 243 36 + mov.b32 %r84, %f23; + shfl.sync.bfly.b32 %r85, %r84, 1, 31, -1; + mov.b32 %f24, %r85; +$L__tmp11: + .loc 2 233 15 + add.f32 %f25, %f23, %f24; +$L__tmp12: + .loc 2 243 36 + setp.eq.s32 %p23, %r75, 0; + shr.u32 %r86, %r1, 3; + and.b32 %r87, %r86, 4; + mov.u32 %r88, global_smem; + add.s32 %r45, %r88, %r87; + mov.b32 %r46, %f25; + @%p23 st.shared.b32 [ %r45 + 0 ], %r46; + bar.sync 0; + setp.lt.s32 %p24, %r1, 2; + shl.b32 %r89, %r1, 2; + add.s32 %r48, %r88, %r89; + @%p24 ld.shared.b32 %r47, [ %r48 + 0 ]; + mov.b32 %f26, %r47; + shfl.sync.bfly.b32 %r90, %r47, 1, 31, -1; + mov.b32 %f27, %r90; +$L__tmp13: + .loc 2 233 15 + add.f32 %f28, %f26, %f27; +$L__tmp14: + .loc 2 243 36 + and.b32 %r91, %r1, 1; + setp.eq.b32 %p34, %r91, 1; + not.pred %p35, %p34; + and.pred %p25, %p24, %p35; + mov.b32 %r50, %f28; + @%p25 st.shared.b32 [ %r48 + 0 ], %r50; + bar.sync 0; + ld.shared.f32 %f29, [global_smem]; +$L__tmp15: + .loc 3 8 15 + add.f32 %f30, %f29, 0f00000000; +$L__tmp16: + .loc 1 47 20 + mov.b32 %r52, %f30; + mov.b32 %r53, 1132462080; + div.full.f32 %r74, %r52, %r53; + mov.b32 %f31, %r74; + .loc 1 48 19 + sub.f32 %f32, %f6, %f31; + sub.f32 %f33, %f5, %f31; + sub.f32 %f34, %f11, %f31; + sub.f32 %f35, %f12, %f31; + .loc 1 49 20 + mul.f32 %f36, %f33, %f33; +$L__tmp17: + .loc 2 243 36 + bar.sync 0; +$L__tmp18: + .loc 2 233 15 + fma.rn.f32 %f37, %f32, %f32, %f36; + fma.rn.f32 %f38, %f34, %f34, %f37; + fma.rn.f32 %f39, %f35, %f35, %f38; +$L__tmp19: + .loc 2 243 36 + mov.b32 %r92, %f39; + shfl.sync.bfly.b32 %r93, %r92, 16, 31, -1; + mov.b32 %f40, %r93; +$L__tmp20: + .loc 2 233 15 + add.f32 %f41, %f39, %f40; +$L__tmp21: + .loc 2 243 36 + mov.b32 %r94, %f41; + shfl.sync.bfly.b32 %r95, %r94, 8, 31, -1; + mov.b32 %f42, %r95; +$L__tmp22: + .loc 2 233 15 + add.f32 %f43, %f41, %f42; +$L__tmp23: + .loc 2 243 36 + mov.b32 %r96, %f43; + shfl.sync.bfly.b32 %r97, %r96, 4, 31, -1; + mov.b32 %f44, %r97; +$L__tmp24: + .loc 2 233 15 + add.f32 %f45, %f43, %f44; +$L__tmp25: + .loc 2 243 36 + mov.b32 %r98, %f45; + shfl.sync.bfly.b32 %r99, %r98, 2, 31, -1; + mov.b32 %f46, %r99; +$L__tmp26: + .loc 2 233 15 + add.f32 %f47, %f45, %f46; +$L__tmp27: + .loc 2 243 36 + mov.b32 %r100, %f47; + shfl.sync.bfly.b32 %r101, %r100, 1, 31, -1; + mov.b32 %f48, %r101; +$L__tmp28: + .loc 2 233 15 + add.f32 %f49, %f47, %f48; +$L__tmp29: + .loc 2 243 36 + mov.b32 %r55, %f49; + @%p23 st.shared.b32 [ %r45 + 0 ], %r55; + bar.sync 0; + @%p24 ld.shared.b32 %r56, [ %r48 + 0 ]; + mov.b32 %f50, %r56; + shfl.sync.bfly.b32 %r102, %r56, 1, 31, -1; + mov.b32 %f51, %r102; +$L__tmp30: + .loc 2 233 15 + add.f32 %f52, %f50, %f51; +$L__tmp31: + .loc 2 243 36 + mov.b32 %r59, %f52; + @%p25 st.shared.b32 [ %r48 + 0 ], %r59; + bar.sync 0; + ld.shared.f32 %f53, [global_smem]; +$L__tmp32: + .loc 3 8 15 + add.f32 %f54, %f53, 0f00000000; +$L__tmp33: + .loc 1 54 20 + mov.b32 %r61, %f54; + div.full.f32 %r60, %r61, %r53; + mov.b32 %f55, %r60; + .loc 1 56 20 + add.f32 %f56, %f55, 0f3727C5AC; + .loc 1 57 26 + rsqrt.approx.ftz.f32 %f57, %f56; + cvt.u32.u64 %r103, %rd3; + cvt.u32.u64 %r104, %rd1; + .loc 1 33 36 + mov.b32 %f58, %r20; + mov.b32 %f59, %r21; + mov.b32 %f60, %r22; + mov.b32 %f61, %r23; + .loc 1 59 20 + mul.f32 %f62, %f32, %f57; + mul.f32 %f63, %f33, %f57; + mul.f32 %f64, %f34, %f57; + mul.f32 %f65, %f35, %f57; + .loc 1 60 20 + mul.f32 %f66, %f62, %f58; + mul.f32 %f67, %f63, %f59; + mul.f32 %f68, %f64, %f60; + mul.f32 %f69, %f65, %f61; + .loc 1 62 35 + shl.b32 %r105, %r104, 8; + .loc 1 62 31 + or.b32 %r106, %r105, %r103; + .loc 1 62 25 + mul.wide.s32 %rd46, %r106, 4; + add.s64 %rd37, %rd6, %rd46; + .loc 1 39 18 + mov.b32 %r63, %f6; + mov.b32 %r66, %f12; + .loc 1 62 47 + @%p18 st.global.v4.b32 [ %rd37 + 0 ], { %r63, %r64, %r65, %r66 }; + .loc 1 63 4 + bar.sync 0; + .loc 1 64 28 + shl.b64 %rd47, %rd1, 2; + add.s64 %rd38, %rd4, %rd47; + .loc 1 64 40 + setp.eq.s32 %p30, %r2, 0; + mov.b32 %r67, %f57; + @%p30 st.global.b32 [ %rd38 + 0 ], { %r67 }; + .loc 1 65 25 + mul.wide.s32 %rd48, %r106, 2; + add.s64 %rd39, %rd8, %rd48; + .loc 1 65 48 + mov.b32 %r68, %f66; + cvt.rn.bf16.f32 %rs1, %r68; + mov.b32 %r69, %f67; + cvt.rn.bf16.f32 %rs2, %r69; + mov.b32 %r70, %f68; + cvt.rn.bf16.f32 %rs3, %r70; + mov.b32 %r71, %f69; + cvt.rn.bf16.f32 %rs4, %r71; + mov.b32 %r107, {%rs1, %rs2}; + mov.b32 %r108, {%rs3, %rs4}; + @%p18 st.global.v2.b32 [ %rd39 + 0 ], { %r107, %r108 }; + .loc 1 66 25 + add.s64 %rd40, %rd7, %rd47; + .loc 1 66 37 + @%p30 st.global.b32 [ %rd40 + 0 ], { %r74 }; + .loc 1 66 4 + ret; +$L__tmp34: +$L__func_end0: + +} + // .globl __nv_rsqrtf +.visible .func (.param .b32 func_retval0) __nv_rsqrtf( + .param .b32 __nv_rsqrtf_param_0 +) +{ + .reg .f32 %f<3>; +$L__func_begin1: + + ld.param.f32 %f1, [__nv_rsqrtf_param_0]; + rsqrt.approx.ftz.f32 %f2, %f1; + st.param.f32 [func_retval0+0], %f2; + ret; +$L__func_end1: + +} + .file 1 "/tmp/torchinductor_root/pd/cpdqiwgwgnzx7tsvbieui7kffx5dt43uhgvg7z7egekxcsybpv34.py" + .file 2 "/usr/local/lib/python3.10/dist-packages/triton/language/standard.py" + .file 3 "/usr/local/lib/python3.10/dist-packages/torch/_inductor/triton_helpers.py" + .section .debug_abbrev + { +.b8 1 +.b8 17 +.b8 1 +.b8 37 +.b8 8 +.b8 19 +.b8 5 +.b8 3 +.b8 8 +.b8 16 +.b8 6 +.b8 27 +.b8 8 +.b8 180 +.b8 66 +.b8 12 +.b8 17 +.b8 1 +.b8 18 +.b8 1 +.b8 0 +.b8 0 +.b8 2 +.b8 46 +.b8 0 +.b8 135 +.b8 64 +.b8 8 +.b8 3 +.b8 8 +.b8 58 +.b8 11 +.b8 59 +.b8 11 +.b8 63 +.b8 12 +.b8 32 +.b8 11 +.b8 0 +.b8 0 +.b8 3 +.b8 46 +.b8 1 +.b8 17 +.b8 1 +.b8 18 +.b8 1 +.b8 64 +.b8 10 +.b8 49 +.b8 19 +.b8 0 +.b8 0 +.b8 4 +.b8 29 +.b8 1 +.b8 49 +.b8 19 +.b8 17 +.b8 1 +.b8 18 +.b8 1 +.b8 88 +.b8 11 +.b8 89 +.b8 11 +.b8 87 +.b8 11 +.b8 0 +.b8 0 +.b8 5 +.b8 29 +.b8 0 +.b8 49 +.b8 19 +.b8 17 +.b8 1 +.b8 18 +.b8 1 +.b8 88 +.b8 11 +.b8 89 +.b8 11 +.b8 87 +.b8 11 +.b8 0 +.b8 0 +.b8 0 + } + .section .debug_info + { +.b32 407 +.b8 2 +.b8 0 +.b32 .debug_abbrev +.b8 8 +.b8 1 +.b8 116 +.b8 114 +.b8 105 +.b8 116 +.b8 111 +.b8 110 +.b8 0 +.b8 2 +.b8 0 +.b8 99 +.b8 112 +.b8 100 +.b8 113 +.b8 105 +.b8 119 +.b8 103 +.b8 119 +.b8 103 +.b8 110 +.b8 122 +.b8 120 +.b8 55 +.b8 116 +.b8 115 +.b8 118 +.b8 98 +.b8 105 +.b8 101 +.b8 117 +.b8 105 +.b8 55 +.b8 107 +.b8 102 +.b8 102 +.b8 120 +.b8 53 +.b8 100 +.b8 116 +.b8 52 +.b8 51 +.b8 117 +.b8 104 +.b8 103 +.b8 118 +.b8 103 +.b8 55 +.b8 122 +.b8 55 +.b8 101 +.b8 103 +.b8 101 +.b8 107 +.b8 120 +.b8 99 +.b8 115 +.b8 121 +.b8 98 +.b8 112 +.b8 118 +.b8 51 +.b8 52 +.b8 46 +.b8 112 +.b8 121 +.b8 0 +.b32 .debug_line +.b8 47 +.b8 116 +.b8 109 +.b8 112 +.b8 47 +.b8 116 +.b8 111 +.b8 114 +.b8 99 +.b8 104 +.b8 105 +.b8 110 +.b8 100 +.b8 117 +.b8 99 +.b8 116 +.b8 111 +.b8 114 +.b8 95 +.b8 114 +.b8 111 +.b8 111 +.b8 116 +.b8 47 +.b8 112 +.b8 100 +.b8 0 +.b8 1 +.b64 $L__func_begin0 +.b64 $L__func_end0 +.b8 2 +.b8 116 +.b8 114 +.b8 105 +.b8 116 +.b8 111 +.b8 110 +.b8 95 +.b8 95 +.b8 48 +.b8 100 +.b8 49 +.b8 100 +.b8 50 +.b8 100 +.b8 51 +.b8 100 +.b8 52 +.b8 100 +.b8 53 +.b8 100 +.b8 54 +.b8 100 +.b8 55 +.b8 100 +.b8 56 +.b8 100 +.b8 101 +.b8 57 +.b8 100 +.b8 101 +.b8 0 +.b8 116 +.b8 114 +.b8 105 +.b8 116 +.b8 111 +.b8 110 +.b8 95 +.b8 95 +.b8 48 +.b8 100 +.b8 49 +.b8 100 +.b8 50 +.b8 100 +.b8 51 +.b8 100 +.b8 52 +.b8 100 +.b8 53 +.b8 100 +.b8 54 +.b8 100 +.b8 55 +.b8 100 +.b8 56 +.b8 100 +.b8 101 +.b8 57 +.b8 100 +.b8 101 +.b8 0 +.b8 1 +.b8 18 +.b8 1 +.b8 1 +.b8 3 +.b64 $L__func_begin0 +.b64 $L__func_end0 +.b8 1 +.b8 156 +.b32 125 +.b8 4 +.b32 125 +.b64 $L__tmp1 +.b64 $L__tmp14 +.b8 2 +.b8 44 +.b8 59 +.b8 5 +.b32 125 +.b64 $L__tmp1 +.b64 $L__tmp14 +.b8 2 +.b8 243 +.b8 36 +.b8 0 +.b8 5 +.b32 125 +.b64 $L__tmp2 +.b64 $L__tmp15 +.b8 2 +.b8 44 +.b8 59 +.b8 5 +.b32 125 +.b64 $L__tmp15 +.b64 $L__tmp16 +.b8 3 +.b8 44 +.b8 45 +.b8 5 +.b32 125 +.b64 $L__tmp17 +.b64 $L__tmp32 +.b8 2 +.b8 52 +.b8 59 +.b8 4 +.b32 125 +.b64 $L__tmp18 +.b64 $L__tmp31 +.b8 2 +.b8 52 +.b8 59 +.b8 5 +.b32 125 +.b64 $L__tmp18 +.b64 $L__tmp31 +.b8 2 +.b8 243 +.b8 36 +.b8 0 +.b8 5 +.b32 125 +.b64 $L__tmp32 +.b64 $L__tmp33 +.b8 3 +.b8 52 +.b8 45 +.b8 0 +.b8 0 + } + .section .debug_pubnames + { +.b32 $L__pubNames_end0-$L__pubNames_start0 +$L__pubNames_start0: +.b8 2 +.b8 0 +.b32 .debug_info +.b32 411 +.b32 125 +.b8 116 +.b8 114 +.b8 105 +.b8 116 +.b8 111 +.b8 110 +.b8 95 +.b8 95 +.b8 48 +.b8 100 +.b8 49 +.b8 100 +.b8 50 +.b8 100 +.b8 51 +.b8 100 +.b8 52 +.b8 100 +.b8 53 +.b8 100 +.b8 54 +.b8 100 +.b8 55 +.b8 100 +.b8 56 +.b8 100 +.b8 101 +.b8 57 +.b8 100 +.b8 101 +.b8 0 +.b32 0 +$L__pubNames_end0: + } + .section .debug_pubtypes + { +.b32 $L__pubTypes_end0-$L__pubTypes_start0 +$L__pubTypes_start0: +.b8 2 +.b8 0 +.b32 .debug_info +.b32 411 +.b32 0 +$L__pubTypes_end0: + } + .section .debug_loc { } diff --git a/.triton/dump/645565eaba0a18dd23ef200fe9abb0c0/triton_.ttgir b/.triton/dump/645565eaba0a18dd23ef200fe9abb0c0/triton_.ttgir new file mode 100644 index 0000000000000000000000000000000000000000..1c41efce3c0d756f19c873dc9e96f1664caa587a --- /dev/null +++ b/.triton/dump/645565eaba0a18dd23ef200fe9abb0c0/triton_.ttgir @@ -0,0 +1,98 @@ +#blocked = #triton_gpu.blocked<{sizePerThread = [4], threadsPerWarp = [32], warpsPerCTA = [2], order = [0], CTAsPerCGA = [1], CTASplitNum = [1], CTAOrder = [0]}> +#blocked1 = #triton_gpu.blocked<{sizePerThread = [1], threadsPerWarp = [32], warpsPerCTA = [2], order = [0], CTAsPerCGA = [1], CTASplitNum = [1], CTAOrder = [0]}> +module attributes {"triton_gpu.compute-capability" = 89 : i32, "triton_gpu.num-ctas" = 1 : i32, "triton_gpu.num-warps" = 2 : i32, "triton_gpu.threads-per-warp" = 32 : i32} { + tt.func public @triton__0d1d2d3d4d5d6d7d8de9de(%arg0: !tt.ptr {tt.divisibility = 16 : i32}, %arg1: !tt.ptr {tt.divisibility = 16 : i32}, %arg2: !tt.ptr {tt.divisibility = 16 : i32}, %arg3: !tt.ptr {tt.divisibility = 16 : i32}, %arg4: !tt.ptr {tt.divisibility = 16 : i32}, %arg5: !tt.ptr {tt.divisibility = 16 : i32}, %arg6: !tt.ptr {tt.divisibility = 16 : i32}, %arg7: !tt.ptr {tt.divisibility = 16 : i32}, %arg8: i32 {tt.divisibility = 16 : i32, tt.max_divisibility = 16 : i32}, %arg9: i32 {tt.divisibility = 16 : i32, tt.max_divisibility = 16 : i32}) attributes {noinline = false} { + %cst = arith.constant dense<256> : tensor<256xi32, #blocked> + %cst_0 = arith.constant dense<0> : tensor<1xi64, #blocked> + %cst_1 = arith.constant dense<50257> : tensor<1xi64, #blocked> + %cst_2 = arith.constant dense<256> : tensor<1xi64, #blocked> + %cst_3 = arith.constant 9.99999974E-6 : f32 + %cst_4 = arith.constant 2.560000e+02 : f32 + %cst_5 = arith.constant 0.000000e+00 : f32 + %c256_i32 = arith.constant 256 : i32 + %c512_i32 = arith.constant 512 : i32 + %cst_6 = arith.constant dense<50257> : tensor<1xi64, #blocked1> + %cst_7 = arith.constant dense<0> : tensor<1xi64, #blocked1> + %cst_8 = arith.constant dense<0.000000e+00> : tensor<256xf32, #blocked> + %0 = tt.get_program_id x : i32 + %1 = tt.make_range {end = 256 : i32, start = 0 : i32} : tensor<256xi32, #blocked> + %2 = arith.cmpi slt, %1, %cst : tensor<256xi32, #blocked> + %3 = arith.remsi %0, %c512_i32 : i32 + %4 = tt.addptr %arg1, %0 : !tt.ptr, i32 + %5 = tt.splat %4 : (!tt.ptr) -> tensor<1x!tt.ptr, #blocked> + %6 = tt.splat %4 : (!tt.ptr) -> tensor<1x!tt.ptr, #blocked1> + %7 = tt.load %5 {cache = 1 : i32, evict = 3 : i32, isVolatile = false} : tensor<1xi64, #blocked> + %8 = tt.load %6 {cache = 1 : i32, evict = 3 : i32, isVolatile = false} : tensor<1xi64, #blocked1> + %9 = arith.muli %3, %c256_i32 : i32 + %10 = tt.splat %9 : (i32) -> tensor<256xi32, #blocked> + %11 = arith.addi %1, %10 : tensor<256xi32, #blocked> + %12 = tt.splat %arg3 : (!tt.ptr) -> tensor<256x!tt.ptr, #blocked> + %13 = tt.addptr %12, %11 : tensor<256x!tt.ptr, #blocked>, tensor<256xi32, #blocked> + %14 = tt.load %13, %2, %cst_8 {cache = 1 : i32, evict = 3 : i32, isVolatile = false} : tensor<256xf32, #blocked> + %15 = tt.splat %arg4 : (!tt.ptr) -> tensor<256x!tt.ptr, #blocked> + %16 = tt.addptr %15, %1 : tensor<256x!tt.ptr, #blocked>, tensor<256xi32, #blocked> + %17 = tt.load %16, %2, %cst_8 {cache = 1 : i32, evict = 3 : i32, isVolatile = false} : tensor<256xf32, #blocked> + %18 = arith.addi %7, %cst_1 : tensor<1xi64, #blocked> + %19 = arith.addi %8, %cst_6 : tensor<1xi64, #blocked1> + %20 = arith.cmpi slt, %7, %cst_0 : tensor<1xi64, #blocked> + %21 = arith.cmpi slt, %8, %cst_7 : tensor<1xi64, #blocked1> + %22 = arith.select %20, %18, %7 : tensor<1xi1, #blocked>, tensor<1xi64, #blocked> + %23 = arith.select %21, %19, %8 : tensor<1xi1, #blocked1>, tensor<1xi64, #blocked1> + %24 = arith.cmpi sge, %23, %cst_7 : tensor<1xi64, #blocked1> + %25 = arith.cmpi slt, %23, %cst_6 : tensor<1xi64, #blocked1> + %26 = arith.andi %24, %25 : tensor<1xi1, #blocked1> + tt.assert %26, "index out of bounds: 0 <= tmp3 < 50257", "", "_call_with_frames_removed", 883 : tensor<1xi1, #blocked1> + %27 = arith.muli %22, %cst_2 : tensor<1xi64, #blocked> + %28 = tt.broadcast %27 : (tensor<1xi64, #blocked>) -> tensor<256xi64, #blocked> + %29 = arith.extsi %1 : tensor<256xi32, #blocked> to tensor<256xi64, #blocked> + %30 = arith.addi %29, %28 : tensor<256xi64, #blocked> + %31 = tt.splat %arg2 : (!tt.ptr) -> tensor<256x!tt.ptr, #blocked> + %32 = tt.addptr %31, %30 : tensor<256x!tt.ptr, #blocked>, tensor<256xi64, #blocked> + %33 = tt.load %32, %2, %cst_8 {cache = 1 : i32, evict = 1 : i32, isVolatile = false} : tensor<256xf32, #blocked> + %34 = arith.addf %33, %14 : tensor<256xf32, #blocked> + %35 = arith.select %2, %34, %cst_8 : tensor<256xi1, #blocked>, tensor<256xf32, #blocked> + %36 = "tt.reduce"(%35) <{axis = 0 : i32}> ({ + ^bb0(%arg10: f32, %arg11: f32): + %65 = arith.addf %arg10, %arg11 : f32 + tt.reduce.return %65 : f32 + }) : (tensor<256xf32, #blocked>) -> f32 + %37 = arith.addf %36, %cst_5 : f32 + %38 = arith.divf %37, %cst_4 : f32 + %39 = tt.splat %38 : (f32) -> tensor<1xf32, #blocked1> + %40 = tt.splat %38 : (f32) -> tensor<256xf32, #blocked> + %41 = arith.subf %34, %40 : tensor<256xf32, #blocked> + %42 = arith.mulf %41, %41 : tensor<256xf32, #blocked> + %43 = arith.select %2, %42, %cst_8 : tensor<256xi1, #blocked>, tensor<256xf32, #blocked> + %44 = "tt.reduce"(%43) <{axis = 0 : i32}> ({ + ^bb0(%arg10: f32, %arg11: f32): + %65 = arith.addf %arg10, %arg11 : f32 + tt.reduce.return %65 : f32 + }) : (tensor<256xf32, #blocked>) -> f32 + %45 = arith.addf %44, %cst_5 : f32 + %46 = arith.divf %45, %cst_4 : f32 + %47 = arith.addf %46, %cst_3 : f32 + %48 = tt.extern_elementwise %47 {libname = "libdevice", libpath = "/usr/local/lib/python3.10/dist-packages/triton/language/../third_party/cuda/lib/libdevice.10.bc", pure = true, symbol = "__nv_rsqrtf"} : (f32) -> f32 + %49 = tt.splat %48 : (f32) -> tensor<1xf32, #blocked1> + %50 = tt.splat %48 : (f32) -> tensor<256xf32, #blocked> + %51 = arith.mulf %41, %50 : tensor<256xf32, #blocked> + %52 = arith.mulf %51, %17 : tensor<256xf32, #blocked> + %53 = arith.muli %0, %c256_i32 : i32 + %54 = tt.splat %53 : (i32) -> tensor<256xi32, #blocked> + %55 = arith.addi %1, %54 : tensor<256xi32, #blocked> + %56 = tt.splat %arg5 : (!tt.ptr) -> tensor<256x!tt.ptr, #blocked> + %57 = tt.addptr %56, %55 : tensor<256x!tt.ptr, #blocked>, tensor<256xi32, #blocked> + tt.store %57, %34, %2 {cache = 1 : i32, evict = 1 : i32} : tensor<256xf32, #blocked> + gpu.barrier + %58 = tt.addptr %arg0, %0 : !tt.ptr, i32 + %59 = tt.splat %58 : (!tt.ptr) -> tensor<1x!tt.ptr, #blocked1> + tt.store %59, %49 {cache = 1 : i32, evict = 1 : i32} : tensor<1xf32, #blocked1> + %60 = tt.splat %arg7 : (!tt.ptr) -> tensor<256x!tt.ptr, #blocked> + %61 = tt.addptr %60, %55 : tensor<256x!tt.ptr, #blocked>, tensor<256xi32, #blocked> + %62 = arith.truncf %52 : tensor<256xf32, #blocked> to tensor<256xbf16, #blocked> + tt.store %61, %62, %2 {cache = 1 : i32, evict = 1 : i32} : tensor<256xbf16, #blocked> + %63 = tt.addptr %arg6, %0 : !tt.ptr, i32 + %64 = tt.splat %63 : (!tt.ptr) -> tensor<1x!tt.ptr, #blocked1> + tt.store %64, %39 {cache = 1 : i32, evict = 1 : i32} : tensor<1xf32, #blocked1> + tt.return + } +} diff --git a/.triton/dump/7dc5bb3e5c2bb99527fff34c6fba7810/triton_.llir b/.triton/dump/7dc5bb3e5c2bb99527fff34c6fba7810/triton_.llir new file mode 100644 index 0000000000000000000000000000000000000000..9094ad01a941abbce96ff1db4eb58713c4111a5a --- /dev/null +++ b/.triton/dump/7dc5bb3e5c2bb99527fff34c6fba7810/triton_.llir @@ -0,0 +1,42 @@ +; ModuleID = 'LLVMDialectModule' +source_filename = "LLVMDialectModule" + +define void @triton__0d1de(ptr addrspace(1) %0, i32 %1) local_unnamed_addr !dbg !5 { + %3 = tail call i32 @llvm.nvvm.read.ptx.sreg.tid.x(), !dbg !8 + %4 = and i32 %3, 127, !dbg !8 + %5 = tail call i32 asm "mov.u32 $0, %ctaid.x;", "=r"() #1, !dbg !9 + %6 = shl i32 %5, 7, !dbg !10 + %7 = or i32 %6, %4, !dbg !11 + %8 = icmp slt i32 %7, 512, !dbg !12 + %9 = sext i32 %7 to i64, !dbg !13 + %10 = getelementptr i64, ptr addrspace(1) %0, i64 %9, !dbg !13 + tail call void asm sideeffect "@$2 st.global.b64 [ $1 + 0 ], { $0 };", "l,l,b"(i64 %9, ptr addrspace(1) %10, i1 %8) #1, !dbg !14 + ret void, !dbg !15 +} + +; Function Attrs: mustprogress nocallback nofree nosync nounwind speculatable willreturn memory(none) +declare noundef i32 @llvm.nvvm.read.ptx.sreg.tid.x() #0 + +attributes #0 = { mustprogress nocallback nofree nosync nounwind speculatable willreturn memory(none) } +attributes #1 = { nounwind } + +!llvm.module.flags = !{!0} +!llvm.dbg.cu = !{!1} +!nvvm.annotations = !{!3, !4, !4, !3} + +!0 = !{i32 2, !"Debug Info Version", i32 3} +!1 = distinct !DICompileUnit(language: DW_LANG_C, file: !2, producer: "triton", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug) +!2 = !DIFile(filename: "cwxxgxdevnyc453z7hh4nxzgmvlhh6suwokktps3dw62btskgxt4.py", directory: "/tmp/torchinductor_root/wx") +!3 = !{ptr @triton__0d1de, !"kernel", i32 1} +!4 = !{ptr @triton__0d1de, !"maxntidx", i32 128} +!5 = distinct !DISubprogram(name: "triton__0d1de", linkageName: "triton__0d1de", scope: !2, file: !2, line: 18, type: !6, scopeLine: 18, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !1) +!6 = !DISubroutineType(cc: DW_CC_normal, types: !7) +!7 = !{} +!8 = !DILocation(line: 21, column: 36, scope: !5) +!9 = !DILocation(line: 20, column: 28, scope: !5) +!10 = !DILocation(line: 20, column: 33, scope: !5) +!11 = !DILocation(line: 21, column: 23, scope: !5) +!12 = !DILocation(line: 22, column: 21, scope: !5) +!13 = !DILocation(line: 25, column: 25, scope: !5) +!14 = !DILocation(line: 25, column: 36, scope: !5) +!15 = !DILocation(line: 25, column: 4, scope: !5) diff --git a/.triton/dump/7dc5bb3e5c2bb99527fff34c6fba7810/triton_.ttir b/.triton/dump/7dc5bb3e5c2bb99527fff34c6fba7810/triton_.ttir new file mode 100644 index 0000000000000000000000000000000000000000..a03cc1bc5285c34c98093ef4e3e7445e7233432a --- /dev/null +++ b/.triton/dump/7dc5bb3e5c2bb99527fff34c6fba7810/triton_.ttir @@ -0,0 +1,17 @@ +module { + tt.func public @triton__0d1de(%arg0: !tt.ptr {tt.divisibility = 16 : i32}, %arg1: i32 {tt.divisibility = 16 : i32, tt.max_divisibility = 16 : i32}) attributes {noinline = false} { + %cst = arith.constant dense<512> : tensor<128xi32> + %c128_i32 = arith.constant 128 : i32 + %0 = tt.get_program_id x : i32 + %1 = arith.muli %0, %c128_i32 : i32 + %2 = tt.make_range {end = 128 : i32, start = 0 : i32} : tensor<128xi32> + %3 = tt.splat %1 : (i32) -> tensor<128xi32> + %4 = arith.addi %3, %2 : tensor<128xi32> + %5 = arith.cmpi slt, %4, %cst : tensor<128xi32> + %6 = tt.splat %arg0 : (!tt.ptr) -> tensor<128x!tt.ptr> + %7 = tt.addptr %6, %4 : tensor<128x!tt.ptr>, tensor<128xi32> + %8 = arith.extsi %4 : tensor<128xi32> to tensor<128xi64> + tt.store %7, %8, %5 {cache = 1 : i32, evict = 1 : i32} : tensor<128xi64> + tt.return + } +} diff --git a/.triton/dump/99f0a4c15ca0aab38ccdae6c765f7333/triton_.cubin b/.triton/dump/99f0a4c15ca0aab38ccdae6c765f7333/triton_.cubin new file mode 100644 index 0000000000000000000000000000000000000000..86b6c0666dd7d2855d8e0b3dc49d1f16e7f10bca Binary files /dev/null and b/.triton/dump/99f0a4c15ca0aab38ccdae6c765f7333/triton_.cubin differ diff --git a/.triton/dump/99f0a4c15ca0aab38ccdae6c765f7333/triton_.llir b/.triton/dump/99f0a4c15ca0aab38ccdae6c765f7333/triton_.llir new file mode 100644 index 0000000000000000000000000000000000000000..b8c9ed0273d7c8f36bb6f4f1f4d0baf9082ab4a0 --- /dev/null +++ b/.triton/dump/99f0a4c15ca0aab38ccdae6c765f7333/triton_.llir @@ -0,0 +1,333 @@ +; ModuleID = 'LLVMDialectModule' +source_filename = "LLVMDialectModule" + +@global_smem = external addrspace(3) global [0 x i8] +@.str = private unnamed_addr constant [11 x i8] c"__CUDA_FTZ\00", align 1 + +define void @triton__0d1d2d3d4d5d6de7de(ptr addrspace(1) %0, ptr addrspace(1) %1, ptr addrspace(1) %2, ptr addrspace(1) %3, ptr addrspace(1) %4, ptr addrspace(1) %5, i32 %6, i32 %7) local_unnamed_addr !dbg !7 { + %9 = tail call i32 @llvm.nvvm.read.ptx.sreg.tid.x(), !dbg !10 + %10 = and i32 %9, 31, !dbg !10 + %11 = lshr i32 %9, 5, !dbg !10 + %12 = and i32 %11, 1, !dbg !10 + %urem = shl i32 %9, 2, !dbg !10 + %13 = and i32 %urem, 252, !dbg !10 + %14 = tail call i32 asm "mov.u32 $0, %ctaid.x;", "=r"() #6, !dbg !11 + %15 = shl i32 %14, 8, !dbg !12 + %16 = or i32 %15, %13, !dbg !13 + %17 = sext i32 %16 to i64, !dbg !14 + %18 = getelementptr float, ptr addrspace(1) %0, i64 %17, !dbg !14 + %19 = tail call { i32, i32, i32, i32 } asm sideeffect "mov.u32 $0, 0x0;\0A\09mov.u32 $1, 0x0;\0A\09mov.u32 $2, 0x0;\0A\09mov.u32 $3, 0x0;\0A\09@$5 ld.global.v4.b32 { $0, $1, $2, $3 }, [ $4 + 0 ];\0A\09@!$7 mov.u32 $0, $6;\0A\09@!$9 mov.u32 $1, $8;\0A\09@!$11 mov.u32 $2, $10;\0A\09@!$13 mov.u32 $3, $12;", "=r,=r,=r,=r,l,b,r,b,r,b,r,b,r,b"(ptr addrspace(1) %18, i1 true, i32 0, i1 true, i32 0, i1 true, i32 0, i1 true, i32 0, i1 true) #6, !dbg !15 + %20 = extractvalue { i32, i32, i32, i32 } %19, 0, !dbg !15 + %21 = extractvalue { i32, i32, i32, i32 } %19, 1, !dbg !15 + %22 = extractvalue { i32, i32, i32, i32 } %19, 2, !dbg !15 + %23 = extractvalue { i32, i32, i32, i32 } %19, 3, !dbg !15 + %24 = bitcast i32 %22 to float, !dbg !15 + %25 = bitcast i32 %23 to float, !dbg !15 + %26 = getelementptr i16, ptr addrspace(1) %1, i64 %17, !dbg !16 + %27 = tail call { i32, i32 } asm sideeffect "mov.u32 $0, 0x0;\0A\09mov.u32 $1, 0x0;\0A\09@$3 ld.global.v2.b32 { $0, $1 }, [ $2 + 0 ];\0A\09@!$5 mov.u32 $0, $4;\0A\09@!$7 mov.u32 $1, $6;", "=r,=r,l,b,r,b,r,b"(ptr addrspace(1) %26, i1 true, i32 0, i1 true, i32 0, i1 true) #6, !dbg !17 + %28 = extractvalue { i32, i32 } %27, 0, !dbg !17 + %29 = extractvalue { i32, i32 } %27, 1, !dbg !17 + %30 = trunc i32 %28 to i16, !dbg !17 + %extelt.offset = lshr i32 %28, 16, !dbg !17 + %31 = trunc i32 %extelt.offset to i16, !dbg !17 + %32 = trunc i32 %29 to i16, !dbg !17 + %extelt.offset1 = lshr i32 %29, 16, !dbg !17 + %33 = trunc i32 %extelt.offset1 to i16, !dbg !17 + %34 = tail call float asm "cvt.f32.bf16 $0, $1;", "=r,h"(i16 %30) #6, !dbg !18 + %35 = tail call float asm "cvt.f32.bf16 $0, $1;", "=r,h"(i16 %31) #6, !dbg !18 + %36 = tail call float asm "cvt.f32.bf16 $0, $1;", "=r,h"(i16 %32) #6, !dbg !18 + %37 = tail call float asm "cvt.f32.bf16 $0, $1;", "=r,h"(i16 %33) #6, !dbg !18 + %38 = getelementptr i16, ptr addrspace(1) %2, i64 %17, !dbg !19 + %39 = tail call { i32, i32 } asm sideeffect "mov.u32 $0, 0x0;\0A\09mov.u32 $1, 0x0;\0A\09@$3 ld.global.v2.b32 { $0, $1 }, [ $2 + 0 ];\0A\09@!$5 mov.u32 $0, $4;\0A\09@!$7 mov.u32 $1, $6;", "=r,=r,l,b,r,b,r,b"(ptr addrspace(1) %38, i1 true, i32 0, i1 true, i32 0, i1 true) #6, !dbg !20 + %40 = extractvalue { i32, i32 } %39, 0, !dbg !20 + %41 = extractvalue { i32, i32 } %39, 1, !dbg !20 + %42 = trunc i32 %40 to i16, !dbg !20 + %extelt.offset2 = lshr i32 %40, 16, !dbg !20 + %43 = trunc i32 %extelt.offset2 to i16, !dbg !20 + %44 = trunc i32 %41 to i16, !dbg !20 + %extelt.offset3 = lshr i32 %41, 16, !dbg !20 + %45 = trunc i32 %extelt.offset3 to i16, !dbg !20 + %46 = tail call float asm "cvt.f32.bf16 $0, $1;", "=r,h"(i16 %42) #6, !dbg !21 + %47 = tail call float asm "cvt.f32.bf16 $0, $1;", "=r,h"(i16 %43) #6, !dbg !21 + %48 = tail call float asm "cvt.f32.bf16 $0, $1;", "=r,h"(i16 %44) #6, !dbg !21 + %49 = tail call float asm "cvt.f32.bf16 $0, $1;", "=r,h"(i16 %45) #6, !dbg !21 + %50 = getelementptr i16, ptr addrspace(1) %3, i64 %17, !dbg !22 + %51 = tail call { i32, i32 } asm sideeffect "mov.u32 $0, 0x0;\0A\09mov.u32 $1, 0x0;\0A\09@$3 ld.global.v2.b32 { $0, $1 }, [ $2 + 0 ];\0A\09@!$5 mov.u32 $0, $4;\0A\09@!$7 mov.u32 $1, $6;", "=r,=r,l,b,r,b,r,b"(ptr addrspace(1) %50, i1 true, i32 0, i1 true, i32 0, i1 true) #6, !dbg !23 + %52 = extractvalue { i32, i32 } %51, 0, !dbg !23 + %53 = extractvalue { i32, i32 } %51, 1, !dbg !23 + %54 = trunc i32 %52 to i16, !dbg !23 + %extelt.offset4 = lshr i32 %52, 16, !dbg !23 + %55 = trunc i32 %extelt.offset4 to i16, !dbg !23 + %56 = trunc i32 %53 to i16, !dbg !23 + %extelt.offset5 = lshr i32 %53, 16, !dbg !23 + %57 = trunc i32 %extelt.offset5 to i16, !dbg !23 + %58 = tail call float asm "cvt.f32.bf16 $0, $1;", "=r,h"(i16 %54) #6, !dbg !24 + %59 = tail call float asm "cvt.f32.bf16 $0, $1;", "=r,h"(i16 %55) #6, !dbg !24 + %60 = tail call float asm "cvt.f32.bf16 $0, $1;", "=r,h"(i16 %56) #6, !dbg !24 + %61 = tail call float asm "cvt.f32.bf16 $0, $1;", "=r,h"(i16 %57) #6, !dbg !24 + %62 = zext nneg i32 %13 to i64, !dbg !25 + %63 = getelementptr float, ptr addrspace(1) %4, i64 %62, !dbg !25 + %64 = tail call { i32, i32, i32, i32 } asm sideeffect "mov.u32 $0, 0x0;\0A\09mov.u32 $1, 0x0;\0A\09mov.u32 $2, 0x0;\0A\09mov.u32 $3, 0x0;\0A\09@$5 ld.global.L1::evict_last.v4.b32 { $0, $1, $2, $3 }, [ $4 + 0 ];\0A\09@!$7 mov.u32 $0, $6;\0A\09@!$9 mov.u32 $1, $8;\0A\09@!$11 mov.u32 $2, $10;\0A\09@!$13 mov.u32 $3, $12;", "=r,=r,=r,=r,l,b,r,b,r,b,r,b,r,b"(ptr addrspace(1) %63, i1 true, i32 0, i1 true, i32 0, i1 true, i32 0, i1 true, i32 0, i1 true) #6, !dbg !26 + %65 = fadd float %36, %24, !dbg !27 + %66 = fadd float %37, %25, !dbg !27 + %67 = fadd float %65, %48, !dbg !28 + %68 = fadd float %66, %49, !dbg !28 + %69 = insertelement <2 x i32> poison, i32 %20, i64 0, !dbg !15 + %70 = insertelement <2 x i32> %69, i32 %21, i64 1, !dbg !15 + %71 = bitcast <2 x i32> %70 to <2 x float>, !dbg !15 + %72 = insertelement <2 x float> poison, float %34, i64 0, !dbg !27 + %73 = insertelement <2 x float> %72, float %35, i64 1, !dbg !27 + %74 = fadd <2 x float> %73, %71, !dbg !27 + %75 = insertelement <2 x float> poison, float %46, i64 0, !dbg !28 + %76 = insertelement <2 x float> %75, float %47, i64 1, !dbg !28 + %77 = fadd <2 x float> %74, %76, !dbg !28 + %78 = insertelement <2 x float> poison, float %58, i64 0, !dbg !29 + %79 = insertelement <2 x float> %78, float %59, i64 1, !dbg !29 + %80 = fadd <2 x float> %77, %79, !dbg !29 + %81 = fadd float %67, %60, !dbg !29 + %82 = fadd float %68, %61, !dbg !29 + %83 = extractelement <2 x float> %80, i64 0, !dbg !30 + %84 = extractelement <2 x float> %80, i64 1, !dbg !30 + %85 = fadd float %83, %84, !dbg !30 + %86 = fadd float %85, %81, !dbg !30 + %87 = fadd float %86, %82, !dbg !30 + %88 = bitcast float %87 to i32, !dbg !36 + %89 = tail call i32 @llvm.nvvm.shfl.sync.bfly.i32(i32 -1, i32 %88, i32 16, i32 31), !dbg !36 + %90 = bitcast i32 %89 to float, !dbg !36 + %91 = fadd float %87, %90, !dbg !30 + %92 = bitcast float %91 to i32, !dbg !36 + %93 = tail call i32 @llvm.nvvm.shfl.sync.bfly.i32(i32 -1, i32 %92, i32 8, i32 31), !dbg !36 + %94 = bitcast i32 %93 to float, !dbg !36 + %95 = fadd float %91, %94, !dbg !30 + %96 = bitcast float %95 to i32, !dbg !36 + %97 = tail call i32 @llvm.nvvm.shfl.sync.bfly.i32(i32 -1, i32 %96, i32 4, i32 31), !dbg !36 + %98 = bitcast i32 %97 to float, !dbg !36 + %99 = fadd float %95, %98, !dbg !30 + %100 = bitcast float %99 to i32, !dbg !36 + %101 = tail call i32 @llvm.nvvm.shfl.sync.bfly.i32(i32 -1, i32 %100, i32 2, i32 31), !dbg !36 + %102 = bitcast i32 %101 to float, !dbg !36 + %103 = fadd float %99, %102, !dbg !30 + %104 = bitcast float %103 to i32, !dbg !36 + %105 = tail call i32 @llvm.nvvm.shfl.sync.bfly.i32(i32 -1, i32 %104, i32 1, i32 31), !dbg !36 + %106 = bitcast i32 %105 to float, !dbg !36 + %107 = fadd float %103, %106, !dbg !30 + %108 = icmp eq i32 %10, 0, !dbg !36 + %109 = zext nneg i32 %12 to i64, !dbg !36 + %110 = getelementptr float, ptr addrspace(3) @global_smem, i64 %109, !dbg !36 + tail call void asm sideeffect "@$2 st.shared.b32 [ $0 + 0 ], $1;", "r,r,b"(ptr addrspace(3) %110, float %107, i1 %108) #6, !dbg !36 + tail call void @llvm.nvvm.barrier0(), !dbg !36 + %111 = icmp slt i32 %9, 2, !dbg !36 + %112 = sext i32 %9 to i64, !dbg !36 + %113 = getelementptr float, ptr addrspace(3) @global_smem, i64 %112, !dbg !36 + %114 = tail call float asm sideeffect "@$2 ld.shared.b32 $0, [ $1 + 0 ];", "=r,r,b"(ptr addrspace(3) %113, i1 %111) #6, !dbg !36 + %115 = bitcast float %114 to i32, !dbg !36 + %116 = tail call i32 @llvm.nvvm.shfl.sync.bfly.i32(i32 -1, i32 %115, i32 1, i32 31), !dbg !36 + %117 = bitcast i32 %116 to float, !dbg !36 + %118 = fadd float %114, %117, !dbg !30 + %119 = and i32 %9, 1, !dbg !36 + %120 = icmp eq i32 %119, 0, !dbg !36 + %121 = and i1 %111, %120, !dbg !36 + tail call void asm sideeffect "@$2 st.shared.b32 [ $0 + 0 ], $1;", "r,r,b"(ptr addrspace(3) %113, float %118, i1 %121) #6, !dbg !36 + tail call void @llvm.nvvm.barrier0(), !dbg !36 + %122 = load float, ptr addrspace(3) @global_smem, align 4, !dbg !36 + %123 = fadd float %122, 0.000000e+00, !dbg !38 + %124 = tail call float asm "div.full.f32 $0, $1, $2;", "=r,r,r"(float %123, float 2.560000e+02) #6, !dbg !42 + %125 = fsub float %83, %124, !dbg !43 + %126 = fsub float %84, %124, !dbg !43 + %127 = fsub float %81, %124, !dbg !43 + %128 = fsub float %82, %124, !dbg !43 + %129 = fmul float %125, %125, !dbg !44 + %130 = fmul float %126, %126, !dbg !44 + %131 = fmul float %127, %127, !dbg !44 + %132 = fmul float %128, %128, !dbg !44 + tail call void @llvm.nvvm.barrier0(), !dbg !45 + %133 = fadd float %129, %130, !dbg !47 + %134 = fadd float %131, %133, !dbg !47 + %135 = fadd float %132, %134, !dbg !47 + %136 = bitcast float %135 to i32, !dbg !45 + %137 = tail call i32 @llvm.nvvm.shfl.sync.bfly.i32(i32 -1, i32 %136, i32 16, i32 31), !dbg !45 + %138 = bitcast i32 %137 to float, !dbg !45 + %139 = fadd float %135, %138, !dbg !47 + %140 = bitcast float %139 to i32, !dbg !45 + %141 = tail call i32 @llvm.nvvm.shfl.sync.bfly.i32(i32 -1, i32 %140, i32 8, i32 31), !dbg !45 + %142 = bitcast i32 %141 to float, !dbg !45 + %143 = fadd float %139, %142, !dbg !47 + %144 = bitcast float %143 to i32, !dbg !45 + %145 = tail call i32 @llvm.nvvm.shfl.sync.bfly.i32(i32 -1, i32 %144, i32 4, i32 31), !dbg !45 + %146 = bitcast i32 %145 to float, !dbg !45 + %147 = fadd float %143, %146, !dbg !47 + %148 = bitcast float %147 to i32, !dbg !45 + %149 = tail call i32 @llvm.nvvm.shfl.sync.bfly.i32(i32 -1, i32 %148, i32 2, i32 31), !dbg !45 + %150 = bitcast i32 %149 to float, !dbg !45 + %151 = fadd float %147, %150, !dbg !47 + %152 = bitcast float %151 to i32, !dbg !45 + %153 = tail call i32 @llvm.nvvm.shfl.sync.bfly.i32(i32 -1, i32 %152, i32 1, i32 31), !dbg !45 + %154 = bitcast i32 %153 to float, !dbg !45 + %155 = fadd float %151, %154, !dbg !47 + tail call void asm sideeffect "@$2 st.shared.b32 [ $0 + 0 ], $1;", "r,r,b"(ptr addrspace(3) %110, float %155, i1 %108) #6, !dbg !45 + tail call void @llvm.nvvm.barrier0(), !dbg !45 + %156 = tail call float asm sideeffect "@$2 ld.shared.b32 $0, [ $1 + 0 ];", "=r,r,b"(ptr addrspace(3) %113, i1 %111) #6, !dbg !45 + %157 = bitcast float %156 to i32, !dbg !45 + %158 = tail call i32 @llvm.nvvm.shfl.sync.bfly.i32(i32 -1, i32 %157, i32 1, i32 31), !dbg !45 + %159 = bitcast i32 %158 to float, !dbg !45 + %160 = fadd float %156, %159, !dbg !47 + tail call void asm sideeffect "@$2 st.shared.b32 [ $0 + 0 ], $1;", "r,r,b"(ptr addrspace(3) %113, float %160, i1 %121) #6, !dbg !45 + tail call void @llvm.nvvm.barrier0(), !dbg !45 + %161 = load float, ptr addrspace(3) @global_smem, align 4, !dbg !45 + %162 = fadd float %161, 0.000000e+00, !dbg !50 + %163 = tail call float asm "div.full.f32 $0, $1, $2;", "=r,r,r"(float %162, float 2.560000e+02) #6, !dbg !52 + %164 = fadd float %163, 0x3EE4F8B580000000, !dbg !53 + %165 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #6, !dbg !54 + %.not.i = icmp eq i32 %165, 0, !dbg !54 + br i1 %.not.i, label %168, label %166, !dbg !54 + +166: ; preds = %8 + %167 = tail call float @llvm.nvvm.rsqrt.approx.ftz.f(float %164), !dbg !54 + br label %__nv_rsqrtf.exit, !dbg !54 + +168: ; preds = %8 + %169 = tail call float @llvm.nvvm.rsqrt.approx.f(float %164), !dbg !54 + br label %__nv_rsqrtf.exit, !dbg !54 + +__nv_rsqrtf.exit: ; preds = %166, %168 + %.0.i = phi float [ %167, %166 ], [ %169, %168 ], !dbg !54 + %170 = extractvalue { i32, i32, i32, i32 } %64, 3, !dbg !26 + %171 = bitcast i32 %170 to float, !dbg !26 + %172 = extractvalue { i32, i32, i32, i32 } %64, 2, !dbg !26 + %173 = bitcast i32 %172 to float, !dbg !26 + %174 = extractvalue { i32, i32, i32, i32 } %64, 1, !dbg !26 + %175 = bitcast i32 %174 to float, !dbg !26 + %176 = extractvalue { i32, i32, i32, i32 } %64, 0, !dbg !26 + %177 = bitcast i32 %176 to float, !dbg !26 + %178 = fmul float %125, %.0.i, !dbg !55 + %179 = fmul float %126, %.0.i, !dbg !55 + %180 = fmul float %127, %.0.i, !dbg !55 + %181 = fmul float %128, %.0.i, !dbg !55 + %182 = fmul float %178, %177, !dbg !56 + %183 = fmul float %179, %175, !dbg !56 + %184 = fmul float %180, %173, !dbg !56 + %185 = fmul float %181, %171, !dbg !56 + %186 = getelementptr i16, ptr addrspace(1) %5, i64 %17, !dbg !57 + %187 = tail call i16 asm "cvt.rn.bf16.f32 $0, $1;", "=h,r"(float %182) #6, !dbg !58 + %188 = tail call i16 asm "cvt.rn.bf16.f32 $0, $1;", "=h,r"(float %183) #6, !dbg !58 + %189 = tail call i16 asm "cvt.rn.bf16.f32 $0, $1;", "=h,r"(float %184) #6, !dbg !58 + %190 = tail call i16 asm "cvt.rn.bf16.f32 $0, $1;", "=h,r"(float %185) #6, !dbg !58 + %191 = insertelement <2 x i16> undef, i16 %187, i64 0, !dbg !58 + %192 = insertelement <2 x i16> %191, i16 %188, i64 1, !dbg !58 + %193 = bitcast <2 x i16> %192 to i32, !dbg !58 + %194 = insertelement <2 x i16> undef, i16 %189, i64 0, !dbg !58 + %195 = insertelement <2 x i16> %194, i16 %190, i64 1, !dbg !58 + %196 = bitcast <2 x i16> %195 to i32, !dbg !58 + tail call void asm sideeffect "@$3 st.global.v2.b32 [ $2 + 0 ], { $0, $1 };", "r,r,l,b"(i32 %193, i32 %196, ptr addrspace(1) %186, i1 true) #6, !dbg !58 + ret void, !dbg !59 +} + +; Function Attrs: mustprogress nocallback nofree nosync nounwind speculatable willreturn memory(none) +declare noundef i32 @llvm.nvvm.read.ptx.sreg.tid.x() #0 + +; Function Attrs: convergent nocallback nounwind memory(inaccessiblemem: readwrite) +declare i32 @llvm.nvvm.shfl.sync.bfly.i32(i32, i32, i32, i32) #1 + +; Function Attrs: convergent nocallback nounwind +declare void @llvm.nvvm.barrier0() #2 + +; Function Attrs: alwaysinline nounwind +define float @__nv_rsqrtf(float %x) local_unnamed_addr #3 { + %1 = tail call i32 @__nvvm_reflect(ptr nonnull @.str) #6 + %.not = icmp eq i32 %1, 0 + br i1 %.not, label %4, label %2 + +2: ; preds = %0 + %3 = tail call float @llvm.nvvm.rsqrt.approx.ftz.f(float %x) + br label %6 + +4: ; preds = %0 + %5 = tail call float @llvm.nvvm.rsqrt.approx.f(float %x) + br label %6 + +6: ; preds = %4, %2 + %.0 = phi float [ %3, %2 ], [ %5, %4 ] + ret float %.0 +} + +declare i32 @__nvvm_reflect(ptr) local_unnamed_addr #4 + +; Function Attrs: mustprogress nocallback nofree nosync nounwind willreturn memory(none) +declare float @llvm.nvvm.rsqrt.approx.ftz.f(float) #5 + +; Function Attrs: mustprogress nocallback nofree nosync nounwind willreturn memory(none) +declare float @llvm.nvvm.rsqrt.approx.f(float) #5 + +attributes #0 = { mustprogress nocallback nofree nosync nounwind speculatable willreturn memory(none) } +attributes #1 = { convergent nocallback nounwind memory(inaccessiblemem: readwrite) } +attributes #2 = { convergent nocallback nounwind } +attributes #3 = { alwaysinline nounwind "disable-tail-calls"="false" "frame-pointer"="all" "less-precise-fpmad"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" } +attributes #4 = { "disable-tail-calls"="false" "frame-pointer"="all" "less-precise-fpmad"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" } +attributes #5 = { mustprogress nocallback nofree nosync nounwind willreturn memory(none) } +attributes #6 = { nounwind } + +!llvm.module.flags = !{!0, !1} +!llvm.dbg.cu = !{!2} +!nvvm.annotations = !{!4, !5, !5, !4} +!llvm.ident = !{!6} + +!0 = !{i32 2, !"Debug Info Version", i32 3} +!1 = !{i32 4, !"nvvm-reflect-ftz", i32 1} +!2 = distinct !DICompileUnit(language: DW_LANG_C, file: !3, producer: "triton", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug) +!3 = !DIFile(filename: "cpwl4wgyi5spzbgbswrqxfrxlyk2m76a4bakbp6l5ltopjbkjadt.py", directory: "/tmp/torchinductor_root/pw") +!4 = !{ptr @triton__0d1d2d3d4d5d6de7de, !"kernel", i32 1} +!5 = !{ptr @triton__0d1d2d3d4d5d6de7de, !"maxntidx", i32 64} +!6 = !{!"clang version 3.8.0 (tags/RELEASE_380/final)"} +!7 = distinct !DISubprogram(name: "triton__0d1d2d3d4d5d6de7de", linkageName: "triton__0d1d2d3d4d5d6de7de", scope: !3, file: !3, line: 18, type: !8, scopeLine: 18, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !2) +!8 = !DISubroutineType(cc: DW_CC_normal, types: !9) +!9 = !{} +!10 = !DILocation(line: 26, column: 26, scope: !7) +!11 = !DILocation(line: 23, column: 28, scope: !7) +!12 = !DILocation(line: 30, column: 40, scope: !7) +!13 = !DILocation(line: 30, column: 36, scope: !7) +!14 = !DILocation(line: 30, column: 30, scope: !7) +!15 = !DILocation(line: 30, column: 46, scope: !7) +!16 = !DILocation(line: 31, column: 30, scope: !7) +!17 = !DILocation(line: 31, column: 46, scope: !7) +!18 = !DILocation(line: 31, column: 67, scope: !7) +!19 = !DILocation(line: 32, column: 30, scope: !7) +!20 = !DILocation(line: 32, column: 46, scope: !7) +!21 = !DILocation(line: 32, column: 67, scope: !7) +!22 = !DILocation(line: 33, column: 30, scope: !7) +!23 = !DILocation(line: 33, column: 46, scope: !7) +!24 = !DILocation(line: 33, column: 67, scope: !7) +!25 = !DILocation(line: 34, column: 31, scope: !7) +!26 = !DILocation(line: 34, column: 36, scope: !7) +!27 = !DILocation(line: 36, column: 18, scope: !7) +!28 = !DILocation(line: 38, column: 18, scope: !7) +!29 = !DILocation(line: 40, column: 18, scope: !7) +!30 = !DILocation(line: 233, column: 15, scope: !31, inlinedAt: !34) +!31 = distinct !DILexicalBlockFile(scope: !33, file: !32, discriminator: 0) +!32 = !DIFile(filename: "standard.py", directory: "/usr/local/lib/python3.10/dist-packages/triton/language") +!33 = distinct !DILexicalBlockFile(scope: !7, file: !32, discriminator: 0) +!34 = !DILocation(line: 243, column: 36, scope: !31, inlinedAt: !35) +!35 = !DILocation(line: 45, column: 59, scope: !31) +!36 = !DILocation(line: 243, column: 36, scope: !33, inlinedAt: !37) +!37 = !DILocation(line: 45, column: 59, scope: !33) +!38 = !DILocation(line: 8, column: 15, scope: !39, inlinedAt: !41) +!39 = distinct !DILexicalBlockFile(scope: !7, file: !40, discriminator: 0) +!40 = !DIFile(filename: "triton_helpers.py", directory: "/usr/local/lib/python3.10/dist-packages/torch/_inductor") +!41 = !DILocation(line: 45, column: 45, scope: !39) +!42 = !DILocation(line: 48, column: 20, scope: !7) +!43 = !DILocation(line: 49, column: 20, scope: !7) +!44 = !DILocation(line: 50, column: 20, scope: !7) +!45 = !DILocation(line: 243, column: 36, scope: !33, inlinedAt: !46) +!46 = !DILocation(line: 53, column: 59, scope: !33) +!47 = !DILocation(line: 233, column: 15, scope: !31, inlinedAt: !48) +!48 = !DILocation(line: 243, column: 36, scope: !31, inlinedAt: !49) +!49 = !DILocation(line: 53, column: 59, scope: !31) +!50 = !DILocation(line: 8, column: 15, scope: !39, inlinedAt: !51) +!51 = !DILocation(line: 53, column: 45, scope: !39) +!52 = !DILocation(line: 56, column: 20, scope: !7) +!53 = !DILocation(line: 58, column: 20, scope: !7) +!54 = !DILocation(line: 59, column: 26, scope: !7) +!55 = !DILocation(line: 60, column: 20, scope: !7) +!56 = !DILocation(line: 61, column: 20, scope: !7) +!57 = !DILocation(line: 63, column: 25, scope: !7) +!58 = !DILocation(line: 63, column: 48, scope: !7) +!59 = !DILocation(line: 63, column: 4, scope: !7) diff --git a/.triton/dump/99f0a4c15ca0aab38ccdae6c765f7333/triton_.ttgir b/.triton/dump/99f0a4c15ca0aab38ccdae6c765f7333/triton_.ttgir new file mode 100644 index 0000000000000000000000000000000000000000..4e392d00deef46b61401f127dd84a42edd0cd2f1 --- /dev/null +++ b/.triton/dump/99f0a4c15ca0aab38ccdae6c765f7333/triton_.ttgir @@ -0,0 +1,68 @@ +#blocked = #triton_gpu.blocked<{sizePerThread = [4], threadsPerWarp = [32], warpsPerCTA = [2], order = [0], CTAsPerCGA = [1], CTASplitNum = [1], CTAOrder = [0]}> +module attributes {"triton_gpu.compute-capability" = 89 : i32, "triton_gpu.num-ctas" = 1 : i32, "triton_gpu.num-warps" = 2 : i32, "triton_gpu.threads-per-warp" = 32 : i32} { + tt.func public @triton__0d1d2d3d4d5d6de7de(%arg0: !tt.ptr {tt.divisibility = 16 : i32}, %arg1: !tt.ptr {tt.divisibility = 16 : i32}, %arg2: !tt.ptr {tt.divisibility = 16 : i32}, %arg3: !tt.ptr {tt.divisibility = 16 : i32}, %arg4: !tt.ptr {tt.divisibility = 16 : i32}, %arg5: !tt.ptr {tt.divisibility = 16 : i32}, %arg6: i32 {tt.divisibility = 16 : i32, tt.max_divisibility = 16 : i32}, %arg7: i32 {tt.divisibility = 16 : i32, tt.max_divisibility = 16 : i32}) attributes {noinline = false} { + %cst = arith.constant dense<256> : tensor<256xi32, #blocked> + %cst_0 = arith.constant 9.99999974E-6 : f32 + %cst_1 = arith.constant 2.560000e+02 : f32 + %cst_2 = arith.constant 0.000000e+00 : f32 + %c256_i32 = arith.constant 256 : i32 + %cst_3 = arith.constant dense<0.000000e+00> : tensor<256xf32, #blocked> + %cst_4 = arith.constant dense<0.000000e+00> : tensor<256xbf16, #blocked> + %0 = tt.get_program_id x : i32 + %1 = tt.make_range {end = 256 : i32, start = 0 : i32} : tensor<256xi32, #blocked> + %2 = arith.cmpi slt, %1, %cst : tensor<256xi32, #blocked> + %3 = arith.muli %0, %c256_i32 : i32 + %4 = tt.splat %3 : (i32) -> tensor<256xi32, #blocked> + %5 = arith.addi %1, %4 : tensor<256xi32, #blocked> + %6 = tt.splat %arg0 : (!tt.ptr) -> tensor<256x!tt.ptr, #blocked> + %7 = tt.addptr %6, %5 : tensor<256x!tt.ptr, #blocked>, tensor<256xi32, #blocked> + %8 = tt.load %7, %2, %cst_3 {cache = 1 : i32, evict = 1 : i32, isVolatile = false} : tensor<256xf32, #blocked> + %9 = tt.splat %arg1 : (!tt.ptr) -> tensor<256x!tt.ptr, #blocked> + %10 = tt.addptr %9, %5 : tensor<256x!tt.ptr, #blocked>, tensor<256xi32, #blocked> + %11 = tt.load %10, %2, %cst_4 {cache = 1 : i32, evict = 1 : i32, isVolatile = false} : tensor<256xbf16, #blocked> + %12 = arith.extf %11 : tensor<256xbf16, #blocked> to tensor<256xf32, #blocked> + %13 = tt.splat %arg2 : (!tt.ptr) -> tensor<256x!tt.ptr, #blocked> + %14 = tt.addptr %13, %5 : tensor<256x!tt.ptr, #blocked>, tensor<256xi32, #blocked> + %15 = tt.load %14, %2, %cst_4 {cache = 1 : i32, evict = 1 : i32, isVolatile = false} : tensor<256xbf16, #blocked> + %16 = arith.extf %15 : tensor<256xbf16, #blocked> to tensor<256xf32, #blocked> + %17 = tt.splat %arg3 : (!tt.ptr) -> tensor<256x!tt.ptr, #blocked> + %18 = tt.addptr %17, %5 : tensor<256x!tt.ptr, #blocked>, tensor<256xi32, #blocked> + %19 = tt.load %18, %2, %cst_4 {cache = 1 : i32, evict = 1 : i32, isVolatile = false} : tensor<256xbf16, #blocked> + %20 = arith.extf %19 : tensor<256xbf16, #blocked> to tensor<256xf32, #blocked> + %21 = tt.splat %arg4 : (!tt.ptr) -> tensor<256x!tt.ptr, #blocked> + %22 = tt.addptr %21, %1 : tensor<256x!tt.ptr, #blocked>, tensor<256xi32, #blocked> + %23 = tt.load %22, %2, %cst_3 {cache = 1 : i32, evict = 3 : i32, isVolatile = false} : tensor<256xf32, #blocked> + %24 = arith.addf %8, %12 : tensor<256xf32, #blocked> + %25 = arith.addf %24, %16 : tensor<256xf32, #blocked> + %26 = arith.addf %25, %20 : tensor<256xf32, #blocked> + %27 = arith.select %2, %26, %cst_3 : tensor<256xi1, #blocked>, tensor<256xf32, #blocked> + %28 = "tt.reduce"(%27) <{axis = 0 : i32}> ({ + ^bb0(%arg8: f32, %arg9: f32): + %46 = arith.addf %arg8, %arg9 : f32 + tt.reduce.return %46 : f32 + }) : (tensor<256xf32, #blocked>) -> f32 + %29 = arith.addf %28, %cst_2 : f32 + %30 = arith.divf %29, %cst_1 : f32 + %31 = tt.splat %30 : (f32) -> tensor<256xf32, #blocked> + %32 = arith.subf %26, %31 : tensor<256xf32, #blocked> + %33 = arith.mulf %32, %32 : tensor<256xf32, #blocked> + %34 = arith.select %2, %33, %cst_3 : tensor<256xi1, #blocked>, tensor<256xf32, #blocked> + %35 = "tt.reduce"(%34) <{axis = 0 : i32}> ({ + ^bb0(%arg8: f32, %arg9: f32): + %46 = arith.addf %arg8, %arg9 : f32 + tt.reduce.return %46 : f32 + }) : (tensor<256xf32, #blocked>) -> f32 + %36 = arith.addf %35, %cst_2 : f32 + %37 = arith.divf %36, %cst_1 : f32 + %38 = arith.addf %37, %cst_0 : f32 + %39 = tt.extern_elementwise %38 {libname = "libdevice", libpath = "/usr/local/lib/python3.10/dist-packages/triton/language/../third_party/cuda/lib/libdevice.10.bc", pure = true, symbol = "__nv_rsqrtf"} : (f32) -> f32 + %40 = tt.splat %39 : (f32) -> tensor<256xf32, #blocked> + %41 = arith.mulf %32, %40 : tensor<256xf32, #blocked> + %42 = arith.mulf %41, %23 : tensor<256xf32, #blocked> + %43 = tt.splat %arg5 : (!tt.ptr) -> tensor<256x!tt.ptr, #blocked> + %44 = tt.addptr %43, %5 : tensor<256x!tt.ptr, #blocked>, tensor<256xi32, #blocked> + %45 = arith.truncf %42 : tensor<256xf32, #blocked> to tensor<256xbf16, #blocked> + tt.store %44, %45, %2 {cache = 1 : i32, evict = 1 : i32} : tensor<256xbf16, #blocked> + tt.return + } +} diff --git a/.triton/dump/9a2fb05196b13393bea452d08e9aaca8/triton_.llir b/.triton/dump/9a2fb05196b13393bea452d08e9aaca8/triton_.llir new file mode 100644 index 0000000000000000000000000000000000000000..db887a89a8452e00761656768c8ed6af699417c6 --- /dev/null +++ b/.triton/dump/9a2fb05196b13393bea452d08e9aaca8/triton_.llir @@ -0,0 +1,54 @@ +; ModuleID = 'LLVMDialectModule' +source_filename = "LLVMDialectModule" + +define void @triton__0d1d2de(ptr addrspace(1) %0, ptr addrspace(1) %1, i32 %2) local_unnamed_addr !dbg !5 { + %4 = tail call i32 @llvm.nvvm.read.ptx.sreg.tid.x(), !dbg !8 + %5 = shl i32 %4, 1, !dbg !8 + %6 = and i32 %5, 510, !dbg !8 + %7 = tail call i32 asm "mov.u32 $0, %ctaid.x;", "=r"() #1, !dbg !9 + %8 = shl i32 %7, 9, !dbg !10 + %9 = or i32 %8, %6, !dbg !11 + %10 = sext i32 %9 to i64, !dbg !12 + %11 = getelementptr float, ptr addrspace(1) %0, i64 %10, !dbg !12 + %12 = tail call { i32, i32 } asm sideeffect "mov.u32 $0, 0x0;\0A\09mov.u32 $1, 0x0;\0A\09@$3 ld.global.v2.b32 { $0, $1 }, [ $2 + 0 ];", "=r,=r,l,b"(ptr addrspace(1) %11, i1 true) #1, !dbg !13 + %13 = extractvalue { i32, i32 } %12, 0, !dbg !13 + %14 = extractvalue { i32, i32 } %12, 1, !dbg !13 + %15 = bitcast i32 %13 to float, !dbg !13 + %16 = bitcast i32 %14 to float, !dbg !13 + %17 = getelementptr i16, ptr addrspace(1) %1, i64 %10, !dbg !14 + %18 = tail call i16 asm "cvt.rn.bf16.f32 $0, $1;", "=h,r"(float %15) #1, !dbg !15 + %19 = tail call i16 asm "cvt.rn.bf16.f32 $0, $1;", "=h,r"(float %16) #1, !dbg !15 + %20 = insertelement <2 x i16> undef, i16 %18, i64 0, !dbg !15 + %21 = insertelement <2 x i16> %20, i16 %19, i64 1, !dbg !15 + %22 = bitcast <2 x i16> %21 to i32, !dbg !15 + tail call void asm sideeffect "@$2 st.global.b32 [ $1 + 0 ], { $0 };", "r,l,b"(i32 %22, ptr addrspace(1) %17, i1 true) #1, !dbg !15 + ret void, !dbg !16 +} + +; Function Attrs: mustprogress nocallback nofree nosync nounwind speculatable willreturn memory(none) +declare noundef i32 @llvm.nvvm.read.ptx.sreg.tid.x() #0 + +attributes #0 = { mustprogress nocallback nofree nosync nounwind speculatable willreturn memory(none) } +attributes #1 = { nounwind } + +!llvm.module.flags = !{!0} +!llvm.dbg.cu = !{!1} +!nvvm.annotations = !{!3, !4, !4, !3} + +!0 = !{i32 2, !"Debug Info Version", i32 3} +!1 = distinct !DICompileUnit(language: DW_LANG_C, file: !2, producer: "triton", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug) +!2 = !DIFile(filename: "c5tryp5qwkhreijk7s5x327wofz54lwj4kvctuqdzv2vrf2xyons.py", directory: "/tmp/torchinductor_root/5t") +!3 = !{ptr @triton__0d1d2de, !"kernel", i32 1} +!4 = !{ptr @triton__0d1d2de, !"maxntidx", i32 256} +!5 = distinct !DISubprogram(name: "triton__0d1d2de", linkageName: "triton__0d1d2de", scope: !2, file: !2, line: 18, type: !6, scopeLine: 18, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !1) +!6 = !DISubroutineType(cc: DW_CC_normal, types: !7) +!7 = !{} +!8 = !DILocation(line: 21, column: 36, scope: !5) +!9 = !DILocation(line: 20, column: 28, scope: !5) +!10 = !DILocation(line: 20, column: 33, scope: !5) +!11 = !DILocation(line: 21, column: 23, scope: !5) +!12 = !DILocation(line: 24, column: 30, scope: !5) +!13 = !DILocation(line: 24, column: 35, scope: !5) +!14 = !DILocation(line: 26, column: 25, scope: !5) +!15 = !DILocation(line: 26, column: 36, scope: !5) +!16 = !DILocation(line: 26, column: 4, scope: !5) diff --git a/.triton/dump/9a2fb05196b13393bea452d08e9aaca8/triton_.ttgir b/.triton/dump/9a2fb05196b13393bea452d08e9aaca8/triton_.ttgir new file mode 100644 index 0000000000000000000000000000000000000000..9f2d830320a91c96caa653767fd2930a46d0fa5d --- /dev/null +++ b/.triton/dump/9a2fb05196b13393bea452d08e9aaca8/triton_.ttgir @@ -0,0 +1,19 @@ +#blocked = #triton_gpu.blocked<{sizePerThread = [2], threadsPerWarp = [32], warpsPerCTA = [8], order = [0], CTAsPerCGA = [1], CTASplitNum = [1], CTAOrder = [0]}> +module attributes {"triton_gpu.compute-capability" = 89 : i32, "triton_gpu.num-ctas" = 1 : i32, "triton_gpu.num-warps" = 8 : i32, "triton_gpu.threads-per-warp" = 32 : i32} { + tt.func public @triton__0d1d2de(%arg0: !tt.ptr {tt.divisibility = 16 : i32}, %arg1: !tt.ptr {tt.divisibility = 16 : i32}, %arg2: i32 {tt.divisibility = 16 : i32, tt.max_divisibility = 16 : i32}) attributes {noinline = false} { + %c512_i32 = arith.constant 512 : i32 + %0 = tt.get_program_id x : i32 + %1 = arith.muli %0, %c512_i32 : i32 + %2 = tt.make_range {end = 512 : i32, start = 0 : i32} : tensor<512xi32, #blocked> + %3 = tt.splat %1 : (i32) -> tensor<512xi32, #blocked> + %4 = arith.addi %3, %2 : tensor<512xi32, #blocked> + %5 = tt.splat %arg0 : (!tt.ptr) -> tensor<512x!tt.ptr, #blocked> + %6 = tt.addptr %5, %4 : tensor<512x!tt.ptr, #blocked>, tensor<512xi32, #blocked> + %7 = tt.load %6 {cache = 1 : i32, evict = 1 : i32, isVolatile = false} : tensor<512xf32, #blocked> + %8 = tt.splat %arg1 : (!tt.ptr) -> tensor<512x!tt.ptr, #blocked> + %9 = tt.addptr %8, %4 : tensor<512x!tt.ptr, #blocked>, tensor<512xi32, #blocked> + %10 = arith.truncf %7 : tensor<512xf32, #blocked> to tensor<512xbf16, #blocked> + tt.store %9, %10 {cache = 1 : i32, evict = 1 : i32} : tensor<512xbf16, #blocked> + tt.return + } +} diff --git a/.triton/dump/a69784da01a97187168f22847465505f/triton_.cubin b/.triton/dump/a69784da01a97187168f22847465505f/triton_.cubin new file mode 100644 index 0000000000000000000000000000000000000000..999e750498c0fbbe6b607425c0b3d7bfbc586d7b Binary files /dev/null and b/.triton/dump/a69784da01a97187168f22847465505f/triton_.cubin differ diff --git a/.triton/dump/a69784da01a97187168f22847465505f/triton_.ttgir b/.triton/dump/a69784da01a97187168f22847465505f/triton_.ttgir new file mode 100644 index 0000000000000000000000000000000000000000..72ed476cf233b80e5e88700c531d4e504dbce8f6 --- /dev/null +++ b/.triton/dump/a69784da01a97187168f22847465505f/triton_.ttgir @@ -0,0 +1,73 @@ +#blocked = #triton_gpu.blocked<{sizePerThread = [4], threadsPerWarp = [32], warpsPerCTA = [2], order = [0], CTAsPerCGA = [1], CTASplitNum = [1], CTAOrder = [0]}> +#blocked1 = #triton_gpu.blocked<{sizePerThread = [1], threadsPerWarp = [32], warpsPerCTA = [2], order = [0], CTAsPerCGA = [1], CTASplitNum = [1], CTAOrder = [0]}> +module attributes {"triton_gpu.compute-capability" = 89 : i32, "triton_gpu.num-ctas" = 1 : i32, "triton_gpu.num-warps" = 2 : i32, "triton_gpu.threads-per-warp" = 32 : i32} { + tt.func public @triton__0d1d2d3d4d5d6d7de8de(%arg0: !tt.ptr {tt.divisibility = 16 : i32}, %arg1: !tt.ptr {tt.divisibility = 16 : i32}, %arg2: !tt.ptr {tt.divisibility = 16 : i32}, %arg3: !tt.ptr {tt.divisibility = 16 : i32}, %arg4: !tt.ptr {tt.divisibility = 16 : i32}, %arg5: !tt.ptr {tt.divisibility = 16 : i32}, %arg6: !tt.ptr {tt.divisibility = 16 : i32}, %arg7: i32 {tt.divisibility = 16 : i32, tt.max_divisibility = 16 : i32}, %arg8: i32 {tt.divisibility = 16 : i32, tt.max_divisibility = 16 : i32}) attributes {noinline = false} { + %cst = arith.constant dense<256> : tensor<256xi32, #blocked> + %cst_0 = arith.constant 9.99999974E-6 : f32 + %cst_1 = arith.constant 2.560000e+02 : f32 + %cst_2 = arith.constant 0.000000e+00 : f32 + %c256_i32 = arith.constant 256 : i32 + %cst_3 = arith.constant dense<0.000000e+00> : tensor<256xf32, #blocked> + %cst_4 = arith.constant dense<0.000000e+00> : tensor<256xbf16, #blocked> + %0 = tt.get_program_id x : i32 + %1 = tt.make_range {end = 256 : i32, start = 0 : i32} : tensor<256xi32, #blocked> + %2 = arith.cmpi slt, %1, %cst : tensor<256xi32, #blocked> + %3 = arith.muli %0, %c256_i32 : i32 + %4 = tt.splat %3 : (i32) -> tensor<256xi32, #blocked> + %5 = arith.addi %1, %4 : tensor<256xi32, #blocked> + %6 = tt.splat %arg1 : (!tt.ptr) -> tensor<256x!tt.ptr, #blocked> + %7 = tt.addptr %6, %5 : tensor<256x!tt.ptr, #blocked>, tensor<256xi32, #blocked> + %8 = tt.load %7, %2, %cst_3 {cache = 1 : i32, evict = 1 : i32, isVolatile = false} : tensor<256xf32, #blocked> + %9 = tt.splat %arg2 : (!tt.ptr) -> tensor<256x!tt.ptr, #blocked> + %10 = tt.addptr %9, %5 : tensor<256x!tt.ptr, #blocked>, tensor<256xi32, #blocked> + %11 = tt.load %10, %2, %cst_4 {cache = 1 : i32, evict = 1 : i32, isVolatile = false} : tensor<256xbf16, #blocked> + %12 = arith.extf %11 : tensor<256xbf16, #blocked> to tensor<256xf32, #blocked> + %13 = tt.splat %arg3 : (!tt.ptr) -> tensor<256x!tt.ptr, #blocked> + %14 = tt.addptr %13, %5 : tensor<256x!tt.ptr, #blocked>, tensor<256xi32, #blocked> + %15 = tt.load %14, %2, %cst_4 {cache = 1 : i32, evict = 1 : i32, isVolatile = false} : tensor<256xbf16, #blocked> + %16 = arith.extf %15 : tensor<256xbf16, #blocked> to tensor<256xf32, #blocked> + %17 = tt.splat %arg4 : (!tt.ptr) -> tensor<256x!tt.ptr, #blocked> + %18 = tt.addptr %17, %1 : tensor<256x!tt.ptr, #blocked>, tensor<256xi32, #blocked> + %19 = tt.load %18, %2, %cst_3 {cache = 1 : i32, evict = 3 : i32, isVolatile = false} : tensor<256xf32, #blocked> + %20 = arith.addf %8, %12 : tensor<256xf32, #blocked> + %21 = arith.addf %20, %16 : tensor<256xf32, #blocked> + %22 = arith.select %2, %21, %cst_3 : tensor<256xi1, #blocked>, tensor<256xf32, #blocked> + %23 = "tt.reduce"(%22) <{axis = 0 : i32}> ({ + ^bb0(%arg9: f32, %arg10: f32): + %47 = arith.addf %arg9, %arg10 : f32 + tt.reduce.return %47 : f32 + }) : (tensor<256xf32, #blocked>) -> f32 + %24 = arith.addf %23, %cst_2 : f32 + %25 = arith.divf %24, %cst_1 : f32 + %26 = tt.splat %25 : (f32) -> tensor<1xf32, #blocked1> + %27 = tt.splat %25 : (f32) -> tensor<256xf32, #blocked> + %28 = arith.subf %21, %27 : tensor<256xf32, #blocked> + %29 = arith.mulf %28, %28 : tensor<256xf32, #blocked> + %30 = arith.select %2, %29, %cst_3 : tensor<256xi1, #blocked>, tensor<256xf32, #blocked> + %31 = "tt.reduce"(%30) <{axis = 0 : i32}> ({ + ^bb0(%arg9: f32, %arg10: f32): + %47 = arith.addf %arg9, %arg10 : f32 + tt.reduce.return %47 : f32 + }) : (tensor<256xf32, #blocked>) -> f32 + %32 = arith.addf %31, %cst_2 : f32 + %33 = arith.divf %32, %cst_1 : f32 + %34 = arith.addf %33, %cst_0 : f32 + %35 = tt.extern_elementwise %34 {libname = "libdevice", libpath = "/usr/local/lib/python3.10/dist-packages/triton/language/../third_party/cuda/lib/libdevice.10.bc", pure = true, symbol = "__nv_rsqrtf"} : (f32) -> f32 + %36 = tt.splat %35 : (f32) -> tensor<1xf32, #blocked1> + %37 = tt.splat %35 : (f32) -> tensor<256xf32, #blocked> + %38 = arith.mulf %28, %37 : tensor<256xf32, #blocked> + %39 = arith.mulf %38, %19 : tensor<256xf32, #blocked> + gpu.barrier + %40 = tt.addptr %arg0, %0 : !tt.ptr, i32 + %41 = tt.splat %40 : (!tt.ptr) -> tensor<1x!tt.ptr, #blocked1> + tt.store %41, %36 {cache = 1 : i32, evict = 1 : i32} : tensor<1xf32, #blocked1> + %42 = tt.splat %arg6 : (!tt.ptr) -> tensor<256x!tt.ptr, #blocked> + %43 = tt.addptr %42, %5 : tensor<256x!tt.ptr, #blocked>, tensor<256xi32, #blocked> + %44 = arith.truncf %39 : tensor<256xf32, #blocked> to tensor<256xbf16, #blocked> + tt.store %43, %44, %2 {cache = 1 : i32, evict = 1 : i32} : tensor<256xbf16, #blocked> + %45 = tt.addptr %arg5, %0 : !tt.ptr, i32 + %46 = tt.splat %45 : (!tt.ptr) -> tensor<1x!tt.ptr, #blocked1> + tt.store %46, %26 {cache = 1 : i32, evict = 1 : i32} : tensor<1xf32, #blocked1> + tt.return + } +} diff --git a/.triton/dump/a75e14a8d2d1ec8471f1c7b615552f8c/triton_.cubin b/.triton/dump/a75e14a8d2d1ec8471f1c7b615552f8c/triton_.cubin new file mode 100644 index 0000000000000000000000000000000000000000..fce98f3c4d464e94e00f15f99fa6acadf5712302 Binary files /dev/null and b/.triton/dump/a75e14a8d2d1ec8471f1c7b615552f8c/triton_.cubin differ diff --git a/.triton/dump/a75e14a8d2d1ec8471f1c7b615552f8c/triton_.ptx b/.triton/dump/a75e14a8d2d1ec8471f1c7b615552f8c/triton_.ptx new file mode 100644 index 0000000000000000000000000000000000000000..e53d19bf723c1368c5463a43469f336ee4f4848f --- /dev/null +++ b/.triton/dump/a75e14a8d2d1ec8471f1c7b615552f8c/triton_.ptx @@ -0,0 +1,295 @@ +// +// Generated by LLVM NVPTX Back-End +// + +.version 8.2 +.target sm_89 +.address_size 64 + + // .globl triton__0d1d2de + +.visible .entry triton__0d1d2de( + .param .u64 triton__0d1d2de_param_0, + .param .u64 triton__0d1d2de_param_1, + .param .u32 triton__0d1d2de_param_2 +) +.maxntid 128, 1, 1 +{ + .reg .pred %p<3>; + .reg .b16 %rs<3>; + .reg .b32 %r<13>; + .reg .b64 %rd<7>; + .loc 1 18 0 +$L__func_begin0: + .loc 1 18 0 + + ld.param.u64 %rd3, [triton__0d1d2de_param_0]; + ld.param.u64 %rd4, [triton__0d1d2de_param_1]; +$L__tmp0: + .loc 1 21 36 + mov.u32 %r7, %tid.x; + shl.b32 %r8, %r7, 1; + and.b32 %r9, %r8, 254; + .loc 1 20 28 + mov.u32 %r1, %ctaid.x; + .loc 1 20 33 + shl.b32 %r10, %r1, 8; + .loc 1 21 23 + or.b32 %r11, %r10, %r9; + .loc 1 24 30 + mul.wide.s32 %rd5, %r11, 4; + add.s64 %rd1, %rd3, %rd5; + mov.pred %p1, -1; + .loc 1 24 35 + mov.u32 %r4, 0x0; + mov.u32 %r5, 0x0; + @%p1 ld.global.v2.b32 { %r4, %r5 }, [ %rd1 + 0 ]; + .loc 1 26 25 + mul.wide.s32 %rd6, %r11, 2; + add.s64 %rd2, %rd4, %rd6; + .loc 1 26 36 + cvt.rn.bf16.f32 %rs1, %r4; + cvt.rn.bf16.f32 %rs2, %r5; + mov.b32 %r12, {%rs1, %rs2}; + @%p1 st.global.b32 [ %rd2 + 0 ], { %r12 }; + .loc 1 26 4 + ret; +$L__tmp1: +$L__func_end0: + +} + .file 1 "/tmp/torchinductor_root/pq/cpqhcwm5bfrhuwddh4c4qks6bh7sovfbpfnmqhnm4h4w23icqnu6.py" + .section .debug_abbrev + { +.b8 1 +.b8 17 +.b8 1 +.b8 37 +.b8 8 +.b8 19 +.b8 5 +.b8 3 +.b8 8 +.b8 16 +.b8 6 +.b8 27 +.b8 8 +.b8 180 +.b8 66 +.b8 12 +.b8 17 +.b8 1 +.b8 18 +.b8 1 +.b8 0 +.b8 0 +.b8 2 +.b8 46 +.b8 0 +.b8 17 +.b8 1 +.b8 18 +.b8 1 +.b8 64 +.b8 10 +.b8 135 +.b8 64 +.b8 8 +.b8 3 +.b8 8 +.b8 58 +.b8 11 +.b8 59 +.b8 11 +.b8 63 +.b8 12 +.b8 0 +.b8 0 +.b8 0 + } + .section .debug_info + { +.b32 176 +.b8 2 +.b8 0 +.b32 .debug_abbrev +.b8 8 +.b8 1 +.b8 116 +.b8 114 +.b8 105 +.b8 116 +.b8 111 +.b8 110 +.b8 0 +.b8 2 +.b8 0 +.b8 99 +.b8 112 +.b8 113 +.b8 104 +.b8 99 +.b8 119 +.b8 109 +.b8 53 +.b8 98 +.b8 102 +.b8 114 +.b8 104 +.b8 117 +.b8 119 +.b8 100 +.b8 100 +.b8 104 +.b8 52 +.b8 99 +.b8 52 +.b8 113 +.b8 107 +.b8 115 +.b8 54 +.b8 98 +.b8 104 +.b8 55 +.b8 115 +.b8 111 +.b8 118 +.b8 102 +.b8 98 +.b8 112 +.b8 102 +.b8 110 +.b8 109 +.b8 113 +.b8 104 +.b8 110 +.b8 109 +.b8 52 +.b8 104 +.b8 52 +.b8 119 +.b8 50 +.b8 51 +.b8 105 +.b8 99 +.b8 113 +.b8 110 +.b8 117 +.b8 54 +.b8 46 +.b8 112 +.b8 121 +.b8 0 +.b32 .debug_line +.b8 47 +.b8 116 +.b8 109 +.b8 112 +.b8 47 +.b8 116 +.b8 111 +.b8 114 +.b8 99 +.b8 104 +.b8 105 +.b8 110 +.b8 100 +.b8 117 +.b8 99 +.b8 116 +.b8 111 +.b8 114 +.b8 95 +.b8 114 +.b8 111 +.b8 111 +.b8 116 +.b8 47 +.b8 112 +.b8 113 +.b8 0 +.b8 1 +.b64 $L__func_begin0 +.b64 $L__func_end0 +.b8 2 +.b64 $L__func_begin0 +.b64 $L__func_end0 +.b8 1 +.b8 156 +.b8 116 +.b8 114 +.b8 105 +.b8 116 +.b8 111 +.b8 110 +.b8 95 +.b8 95 +.b8 48 +.b8 100 +.b8 49 +.b8 100 +.b8 50 +.b8 100 +.b8 101 +.b8 0 +.b8 116 +.b8 114 +.b8 105 +.b8 116 +.b8 111 +.b8 110 +.b8 95 +.b8 95 +.b8 48 +.b8 100 +.b8 49 +.b8 100 +.b8 50 +.b8 100 +.b8 101 +.b8 0 +.b8 1 +.b8 18 +.b8 1 +.b8 0 + } + .section .debug_pubnames + { +.b32 $L__pubNames_end0-$L__pubNames_start0 +$L__pubNames_start0: +.b8 2 +.b8 0 +.b32 .debug_info +.b32 180 +.b32 125 +.b8 116 +.b8 114 +.b8 105 +.b8 116 +.b8 111 +.b8 110 +.b8 95 +.b8 95 +.b8 48 +.b8 100 +.b8 49 +.b8 100 +.b8 50 +.b8 100 +.b8 101 +.b8 0 +.b32 0 +$L__pubNames_end0: + } + .section .debug_pubtypes + { +.b32 $L__pubTypes_end0-$L__pubTypes_start0 +$L__pubTypes_start0: +.b8 2 +.b8 0 +.b32 .debug_info +.b32 180 +.b32 0 +$L__pubTypes_end0: + } + .section .debug_loc { } diff --git a/.triton/dump/a75e14a8d2d1ec8471f1c7b615552f8c/triton_.ttir b/.triton/dump/a75e14a8d2d1ec8471f1c7b615552f8c/triton_.ttir new file mode 100644 index 0000000000000000000000000000000000000000..5e1eb416bdba9bc0a0faf05ed6ebecc6b093427c --- /dev/null +++ b/.triton/dump/a75e14a8d2d1ec8471f1c7b615552f8c/triton_.ttir @@ -0,0 +1,18 @@ +module { + tt.func public @triton__0d1d2de(%arg0: !tt.ptr {tt.divisibility = 16 : i32}, %arg1: !tt.ptr {tt.divisibility = 16 : i32}, %arg2: i32 {tt.divisibility = 16 : i32, tt.max_divisibility = 16 : i32}) attributes {noinline = false} { + %c256_i32 = arith.constant 256 : i32 + %0 = tt.get_program_id x : i32 + %1 = arith.muli %0, %c256_i32 : i32 + %2 = tt.make_range {end = 256 : i32, start = 0 : i32} : tensor<256xi32> + %3 = tt.splat %1 : (i32) -> tensor<256xi32> + %4 = arith.addi %3, %2 : tensor<256xi32> + %5 = tt.splat %arg0 : (!tt.ptr) -> tensor<256x!tt.ptr> + %6 = tt.addptr %5, %4 : tensor<256x!tt.ptr>, tensor<256xi32> + %7 = tt.load %6 {cache = 1 : i32, evict = 1 : i32, isVolatile = false} : tensor<256xf32> + %8 = tt.splat %arg1 : (!tt.ptr) -> tensor<256x!tt.ptr> + %9 = tt.addptr %8, %4 : tensor<256x!tt.ptr>, tensor<256xi32> + %10 = arith.truncf %7 : tensor<256xf32> to tensor<256xbf16> + tt.store %9, %10 {cache = 1 : i32, evict = 1 : i32} : tensor<256xbf16> + tt.return + } +} diff --git a/.triton/dump/ab89f85e55d5ddd9676325b49df9419f/triton_.ptx b/.triton/dump/ab89f85e55d5ddd9676325b49df9419f/triton_.ptx new file mode 100644 index 0000000000000000000000000000000000000000..d11434b0fa02e6eb7cca300bb05de44dffb7cf84 --- /dev/null +++ b/.triton/dump/ab89f85e55d5ddd9676325b49df9419f/triton_.ptx @@ -0,0 +1,717 @@ +// +// Generated by LLVM NVPTX Back-End +// + +.version 8.2 +.target sm_89 +.address_size 64 + + // .globl triton__0d1d2d3d4d5d6de7de +.extern .shared .align 1 .b8 global_smem[]; +.global .align 1 .b8 _$_str[11] = {95, 95, 67, 85, 68, 65, 95, 70, 84, 90, 0}; + +.visible .entry triton__0d1d2d3d4d5d6de7de( + .param .u64 triton__0d1d2d3d4d5d6de7de_param_0, + .param .u64 triton__0d1d2d3d4d5d6de7de_param_1, + .param .u64 triton__0d1d2d3d4d5d6de7de_param_2, + .param .u64 triton__0d1d2d3d4d5d6de7de_param_3, + .param .u64 triton__0d1d2d3d4d5d6de7de_param_4, + .param .u64 triton__0d1d2d3d4d5d6de7de_param_5, + .param .u32 triton__0d1d2d3d4d5d6de7de_param_6, + .param .u32 triton__0d1d2d3d4d5d6de7de_param_7 +) +.maxntid 64, 1, 1 +{ + .reg .pred %p<25>; + .reg .b16 %rs<9>; + .reg .b32 %r<87>; + .reg .f32 %f<70>; + .reg .b64 %rd<17>; + .loc 1 18 0 +$L__func_begin0: + .loc 1 18 0 + + ld.param.u64 %rd7, [triton__0d1d2d3d4d5d6de7de_param_0]; + ld.param.u64 %rd8, [triton__0d1d2d3d4d5d6de7de_param_1]; +$L__tmp0: + .loc 1 26 26 + mov.u32 %r52, %tid.x; + and.b32 %r53, %r52, 31; + ld.param.u64 %rd9, [triton__0d1d2d3d4d5d6de7de_param_2]; + ld.param.u64 %rd10, [triton__0d1d2d3d4d5d6de7de_param_3]; + ld.param.u64 %rd11, [triton__0d1d2d3d4d5d6de7de_param_4]; + and.b32 %r54, %r52, 63; + ld.param.u64 %rd12, [triton__0d1d2d3d4d5d6de7de_param_5]; + shl.b32 %r55, %r54, 2; + .loc 1 23 28 + mov.u32 %r1, %ctaid.x; + .loc 1 30 40 + shl.b32 %r56, %r1, 8; + .loc 1 30 36 + or.b32 %r57, %r56, %r55; + .loc 1 30 30 + mul.wide.s32 %rd13, %r57, 4; + add.s64 %rd1, %rd8, %rd13; + mov.b32 %r6, 0; + mov.pred %p1, -1; + .loc 1 30 46 + mov.u32 %r2, 0x0; + mov.u32 %r3, 0x0; + mov.u32 %r4, 0x0; + mov.u32 %r5, 0x0; + @%p1 ld.global.v4.b32 { %r2, %r3, %r4, %r5 }, [ %rd1 + 0 ]; + @!%p1 mov.u32 %r2, %r6; + @!%p1 mov.u32 %r3, %r6; + @!%p1 mov.u32 %r4, %r6; + @!%p1 mov.u32 %r5, %r6; + mov.b32 %f1, %r2; + mov.b32 %f2, %r3; + mov.b32 %f3, %r4; + mov.b32 %f4, %r5; + .loc 1 31 30 + mul.wide.s32 %rd14, %r57, 2; + add.s64 %rd2, %rd9, %rd14; + .loc 1 31 46 + mov.u32 %r10, 0x0; + mov.u32 %r11, 0x0; + @%p1 ld.global.v2.b32 { %r10, %r11 }, [ %rd2 + 0 ]; + @!%p1 mov.u32 %r10, %r6; + @!%p1 mov.u32 %r11, %r6; + cvt.u16.u32 %rs1, %r10; + { .reg .b16 tmp; mov.b32 {tmp, %rs2}, %r10; } + cvt.u16.u32 %rs3, %r11; + { .reg .b16 tmp; mov.b32 {tmp, %rs4}, %r11; } + .loc 1 31 67 + cvt.f32.bf16 %r14, %rs1; + mov.b32 %f5, %r14; + cvt.f32.bf16 %r15, %rs2; + mov.b32 %f6, %r15; + cvt.f32.bf16 %r16, %rs3; + mov.b32 %f7, %r16; + cvt.f32.bf16 %r17, %rs4; + mov.b32 %f8, %r17; + .loc 1 32 31 + mul.wide.u32 %rd15, %r55, 4; + add.s64 %rd3, %rd10, %rd15; + .loc 1 32 36 + mov.u32 %r18, 0x0; + mov.u32 %r19, 0x0; + mov.u32 %r20, 0x0; + mov.u32 %r21, 0x0; + @%p1 ld.global.L1::evict_last.v4.b32 { %r18, %r19, %r20, %r21 }, [ %rd3 + 0 ]; + @!%p1 mov.u32 %r18, %r6; + @!%p1 mov.u32 %r19, %r6; + @!%p1 mov.u32 %r20, %r6; + @!%p1 mov.u32 %r21, %r6; + .loc 1 34 18 + add.f32 %f9, %f5, %f1; + add.f32 %f10, %f6, %f2; + add.f32 %f11, %f7, %f3; + add.f32 %f12, %f8, %f4; +$L__tmp1: + .loc 2 233 15 + add.f32 %f13, %f9, %f10; + add.f32 %f14, %f13, %f11; + add.f32 %f15, %f14, %f12; +$L__tmp2: + .loc 2 243 36 + mov.b32 %r58, %f15; + shfl.sync.bfly.b32 %r59, %r58, 16, 31, -1; + mov.b32 %f16, %r59; +$L__tmp3: + .loc 2 233 15 + add.f32 %f17, %f15, %f16; +$L__tmp4: + .loc 2 243 36 + mov.b32 %r60, %f17; + shfl.sync.bfly.b32 %r61, %r60, 8, 31, -1; + mov.b32 %f18, %r61; +$L__tmp5: + .loc 2 233 15 + add.f32 %f19, %f17, %f18; +$L__tmp6: + .loc 2 243 36 + mov.b32 %r62, %f19; + shfl.sync.bfly.b32 %r63, %r62, 4, 31, -1; + mov.b32 %f20, %r63; +$L__tmp7: + .loc 2 233 15 + add.f32 %f21, %f19, %f20; +$L__tmp8: + .loc 2 243 36 + mov.b32 %r64, %f21; + shfl.sync.bfly.b32 %r65, %r64, 2, 31, -1; + mov.b32 %f22, %r65; +$L__tmp9: + .loc 2 233 15 + add.f32 %f23, %f21, %f22; +$L__tmp10: + .loc 2 243 36 + mov.b32 %r66, %f23; + shfl.sync.bfly.b32 %r67, %r66, 1, 31, -1; + mov.b32 %f24, %r67; +$L__tmp11: + .loc 2 233 15 + add.f32 %f25, %f23, %f24; +$L__tmp12: + .loc 2 243 36 + setp.eq.s32 %p14, %r53, 0; + shr.u32 %r68, %r52, 3; + and.b32 %r69, %r68, 4; + mov.u32 %r70, global_smem; + add.s32 %r26, %r70, %r69; + mov.b32 %r27, %f25; + @%p14 st.shared.b32 [ %r26 + 0 ], %r27; + bar.sync 0; + setp.lt.s32 %p15, %r52, 2; + shl.b32 %r71, %r52, 2; + add.s32 %r29, %r70, %r71; + @%p15 ld.shared.b32 %r28, [ %r29 + 0 ]; + mov.b32 %f26, %r28; + shfl.sync.bfly.b32 %r72, %r28, 1, 31, -1; + mov.b32 %f27, %r72; +$L__tmp13: + .loc 2 233 15 + add.f32 %f28, %f26, %f27; +$L__tmp14: + .loc 2 243 36 + and.b32 %r73, %r52, 1; + setp.eq.b32 %p23, %r73, 1; + not.pred %p24, %p23; + and.pred %p16, %p15, %p24; + mov.b32 %r31, %f28; + @%p16 st.shared.b32 [ %r29 + 0 ], %r31; + bar.sync 0; + ld.shared.f32 %f29, [global_smem]; +$L__tmp15: + .loc 3 8 15 + add.f32 %f30, %f29, 0f00000000; +$L__tmp16: + .loc 1 42 20 + mov.b32 %r33, %f30; + mov.b32 %r34, 1132462080; + div.full.f32 %r51, %r33, %r34; + mov.b32 %f31, %r51; + .loc 1 43 19 + sub.f32 %f32, %f9, %f31; + sub.f32 %f33, %f10, %f31; + sub.f32 %f34, %f11, %f31; + sub.f32 %f35, %f12, %f31; + .loc 1 44 20 + mul.f32 %f36, %f33, %f33; +$L__tmp17: + .loc 2 243 36 + bar.sync 0; +$L__tmp18: + .loc 2 233 15 + fma.rn.f32 %f37, %f32, %f32, %f36; + fma.rn.f32 %f38, %f34, %f34, %f37; + fma.rn.f32 %f39, %f35, %f35, %f38; +$L__tmp19: + .loc 2 243 36 + mov.b32 %r74, %f39; + shfl.sync.bfly.b32 %r75, %r74, 16, 31, -1; + mov.b32 %f40, %r75; +$L__tmp20: + .loc 2 233 15 + add.f32 %f41, %f39, %f40; +$L__tmp21: + .loc 2 243 36 + mov.b32 %r76, %f41; + shfl.sync.bfly.b32 %r77, %r76, 8, 31, -1; + mov.b32 %f42, %r77; +$L__tmp22: + .loc 2 233 15 + add.f32 %f43, %f41, %f42; +$L__tmp23: + .loc 2 243 36 + mov.b32 %r78, %f43; + shfl.sync.bfly.b32 %r79, %r78, 4, 31, -1; + mov.b32 %f44, %r79; +$L__tmp24: + .loc 2 233 15 + add.f32 %f45, %f43, %f44; +$L__tmp25: + .loc 2 243 36 + mov.b32 %r80, %f45; + shfl.sync.bfly.b32 %r81, %r80, 2, 31, -1; + mov.b32 %f46, %r81; +$L__tmp26: + .loc 2 233 15 + add.f32 %f47, %f45, %f46; +$L__tmp27: + .loc 2 243 36 + mov.b32 %r82, %f47; + shfl.sync.bfly.b32 %r83, %r82, 1, 31, -1; + mov.b32 %f48, %r83; +$L__tmp28: + .loc 2 233 15 + add.f32 %f49, %f47, %f48; +$L__tmp29: + .loc 2 243 36 + mov.b32 %r36, %f49; + @%p14 st.shared.b32 [ %r26 + 0 ], %r36; + bar.sync 0; + @%p15 ld.shared.b32 %r37, [ %r29 + 0 ]; + mov.b32 %f50, %r37; + shfl.sync.bfly.b32 %r84, %r37, 1, 31, -1; + mov.b32 %f51, %r84; +$L__tmp30: + .loc 2 233 15 + add.f32 %f52, %f50, %f51; +$L__tmp31: + .loc 2 243 36 + mov.b32 %r40, %f52; + @%p16 st.shared.b32 [ %r29 + 0 ], %r40; + bar.sync 0; + ld.shared.f32 %f53, [global_smem]; +$L__tmp32: + .loc 3 8 15 + add.f32 %f54, %f53, 0f00000000; +$L__tmp33: + .loc 1 49 20 + mov.b32 %r42, %f54; + div.full.f32 %r41, %r42, %r34; + mov.b32 %f55, %r41; + .loc 1 51 20 + add.f32 %f56, %f55, 0f3727C5AC; + .loc 1 52 26 + rsqrt.approx.ftz.f32 %f57, %f56; + .loc 1 32 36 + mov.b32 %f58, %r21; + mov.b32 %f59, %r20; + mov.b32 %f60, %r19; + mov.b32 %f61, %r18; + .loc 1 54 20 + mul.f32 %f62, %f32, %f57; + mul.f32 %f63, %f33, %f57; + mul.f32 %f64, %f34, %f57; + mul.f32 %f65, %f35, %f57; + .loc 1 55 20 + mul.f32 %f66, %f62, %f61; + mul.f32 %f67, %f63, %f60; + mul.f32 %f68, %f64, %f59; + mul.f32 %f69, %f65, %f58; + .loc 1 57 4 + bar.sync 0; + .loc 1 58 28 + mul.wide.s32 %rd16, %r1, 4; + add.s64 %rd4, %rd7, %rd16; + .loc 1 58 40 + setp.eq.s32 %p20, %r54, 0; + mov.b32 %r44, %f57; + @%p20 st.global.b32 [ %rd4 + 0 ], { %r44 }; + .loc 1 59 25 + add.s64 %rd5, %rd12, %rd14; + .loc 1 59 48 + mov.b32 %r45, %f66; + cvt.rn.bf16.f32 %rs5, %r45; + mov.b32 %r46, %f67; + cvt.rn.bf16.f32 %rs6, %r46; + mov.b32 %r47, %f68; + cvt.rn.bf16.f32 %rs7, %r47; + mov.b32 %r48, %f69; + cvt.rn.bf16.f32 %rs8, %r48; + mov.b32 %r85, {%rs5, %rs6}; + mov.b32 %r86, {%rs7, %rs8}; + @%p1 st.global.v2.b32 [ %rd5 + 0 ], { %r85, %r86 }; + .loc 1 60 25 + add.s64 %rd6, %rd11, %rd16; + .loc 1 60 37 + @%p20 st.global.b32 [ %rd6 + 0 ], { %r51 }; + .loc 1 60 4 + ret; +$L__tmp34: +$L__func_end0: + +} + // .globl __nv_rsqrtf +.visible .func (.param .b32 func_retval0) __nv_rsqrtf( + .param .b32 __nv_rsqrtf_param_0 +) +{ + .reg .f32 %f<3>; +$L__func_begin1: + + ld.param.f32 %f1, [__nv_rsqrtf_param_0]; + rsqrt.approx.ftz.f32 %f2, %f1; + st.param.f32 [func_retval0+0], %f2; + ret; +$L__func_end1: + +} + .file 1 "/tmp/torchinductor_root/w3/cw35gljjtatzr2ztskwlxndj2nreiih7r3vg5rw4douyaxccqgij.py" + .file 2 "/usr/local/lib/python3.10/dist-packages/triton/language/standard.py" + .file 3 "/usr/local/lib/python3.10/dist-packages/torch/_inductor/triton_helpers.py" + .section .debug_abbrev + { +.b8 1 +.b8 17 +.b8 1 +.b8 37 +.b8 8 +.b8 19 +.b8 5 +.b8 3 +.b8 8 +.b8 16 +.b8 6 +.b8 27 +.b8 8 +.b8 180 +.b8 66 +.b8 12 +.b8 17 +.b8 1 +.b8 18 +.b8 1 +.b8 0 +.b8 0 +.b8 2 +.b8 46 +.b8 0 +.b8 135 +.b8 64 +.b8 8 +.b8 3 +.b8 8 +.b8 58 +.b8 11 +.b8 59 +.b8 11 +.b8 63 +.b8 12 +.b8 32 +.b8 11 +.b8 0 +.b8 0 +.b8 3 +.b8 46 +.b8 1 +.b8 17 +.b8 1 +.b8 18 +.b8 1 +.b8 64 +.b8 10 +.b8 49 +.b8 19 +.b8 0 +.b8 0 +.b8 4 +.b8 29 +.b8 1 +.b8 49 +.b8 19 +.b8 17 +.b8 1 +.b8 18 +.b8 1 +.b8 88 +.b8 11 +.b8 89 +.b8 11 +.b8 87 +.b8 11 +.b8 0 +.b8 0 +.b8 5 +.b8 29 +.b8 0 +.b8 49 +.b8 19 +.b8 17 +.b8 1 +.b8 18 +.b8 1 +.b8 88 +.b8 11 +.b8 89 +.b8 11 +.b8 87 +.b8 11 +.b8 0 +.b8 0 +.b8 0 + } + .section .debug_info + { +.b32 399 +.b8 2 +.b8 0 +.b32 .debug_abbrev +.b8 8 +.b8 1 +.b8 116 +.b8 114 +.b8 105 +.b8 116 +.b8 111 +.b8 110 +.b8 0 +.b8 2 +.b8 0 +.b8 99 +.b8 119 +.b8 51 +.b8 53 +.b8 103 +.b8 108 +.b8 106 +.b8 106 +.b8 116 +.b8 97 +.b8 116 +.b8 122 +.b8 114 +.b8 50 +.b8 122 +.b8 116 +.b8 115 +.b8 107 +.b8 119 +.b8 108 +.b8 120 +.b8 110 +.b8 100 +.b8 106 +.b8 50 +.b8 110 +.b8 114 +.b8 101 +.b8 105 +.b8 105 +.b8 104 +.b8 55 +.b8 114 +.b8 51 +.b8 118 +.b8 103 +.b8 53 +.b8 114 +.b8 119 +.b8 52 +.b8 100 +.b8 111 +.b8 117 +.b8 121 +.b8 97 +.b8 120 +.b8 99 +.b8 99 +.b8 113 +.b8 103 +.b8 105 +.b8 106 +.b8 46 +.b8 112 +.b8 121 +.b8 0 +.b32 .debug_line +.b8 47 +.b8 116 +.b8 109 +.b8 112 +.b8 47 +.b8 116 +.b8 111 +.b8 114 +.b8 99 +.b8 104 +.b8 105 +.b8 110 +.b8 100 +.b8 117 +.b8 99 +.b8 116 +.b8 111 +.b8 114 +.b8 95 +.b8 114 +.b8 111 +.b8 111 +.b8 116 +.b8 47 +.b8 119 +.b8 51 +.b8 0 +.b8 1 +.b64 $L__func_begin0 +.b64 $L__func_end0 +.b8 2 +.b8 116 +.b8 114 +.b8 105 +.b8 116 +.b8 111 +.b8 110 +.b8 95 +.b8 95 +.b8 48 +.b8 100 +.b8 49 +.b8 100 +.b8 50 +.b8 100 +.b8 51 +.b8 100 +.b8 52 +.b8 100 +.b8 53 +.b8 100 +.b8 54 +.b8 100 +.b8 101 +.b8 55 +.b8 100 +.b8 101 +.b8 0 +.b8 116 +.b8 114 +.b8 105 +.b8 116 +.b8 111 +.b8 110 +.b8 95 +.b8 95 +.b8 48 +.b8 100 +.b8 49 +.b8 100 +.b8 50 +.b8 100 +.b8 51 +.b8 100 +.b8 52 +.b8 100 +.b8 53 +.b8 100 +.b8 54 +.b8 100 +.b8 101 +.b8 55 +.b8 100 +.b8 101 +.b8 0 +.b8 1 +.b8 18 +.b8 1 +.b8 1 +.b8 3 +.b64 $L__func_begin0 +.b64 $L__func_end0 +.b8 1 +.b8 156 +.b32 125 +.b8 4 +.b32 125 +.b64 $L__tmp1 +.b64 $L__tmp14 +.b8 2 +.b8 39 +.b8 58 +.b8 5 +.b32 125 +.b64 $L__tmp1 +.b64 $L__tmp14 +.b8 2 +.b8 243 +.b8 36 +.b8 0 +.b8 5 +.b32 125 +.b64 $L__tmp2 +.b64 $L__tmp15 +.b8 2 +.b8 39 +.b8 58 +.b8 5 +.b32 125 +.b64 $L__tmp15 +.b64 $L__tmp16 +.b8 3 +.b8 39 +.b8 45 +.b8 5 +.b32 125 +.b64 $L__tmp17 +.b64 $L__tmp32 +.b8 2 +.b8 47 +.b8 59 +.b8 4 +.b32 125 +.b64 $L__tmp18 +.b64 $L__tmp31 +.b8 2 +.b8 47 +.b8 59 +.b8 5 +.b32 125 +.b64 $L__tmp18 +.b64 $L__tmp31 +.b8 2 +.b8 243 +.b8 36 +.b8 0 +.b8 5 +.b32 125 +.b64 $L__tmp32 +.b64 $L__tmp33 +.b8 3 +.b8 47 +.b8 45 +.b8 0 +.b8 0 + } + .section .debug_pubnames + { +.b32 $L__pubNames_end0-$L__pubNames_start0 +$L__pubNames_start0: +.b8 2 +.b8 0 +.b32 .debug_info +.b32 403 +.b32 125 +.b8 116 +.b8 114 +.b8 105 +.b8 116 +.b8 111 +.b8 110 +.b8 95 +.b8 95 +.b8 48 +.b8 100 +.b8 49 +.b8 100 +.b8 50 +.b8 100 +.b8 51 +.b8 100 +.b8 52 +.b8 100 +.b8 53 +.b8 100 +.b8 54 +.b8 100 +.b8 101 +.b8 55 +.b8 100 +.b8 101 +.b8 0 +.b32 0 +$L__pubNames_end0: + } + .section .debug_pubtypes + { +.b32 $L__pubTypes_end0-$L__pubTypes_start0 +$L__pubTypes_start0: +.b8 2 +.b8 0 +.b32 .debug_info +.b32 403 +.b32 0 +$L__pubTypes_end0: + } + .section .debug_loc { } diff --git a/.triton/dump/ab89f85e55d5ddd9676325b49df9419f/triton_.ttgir b/.triton/dump/ab89f85e55d5ddd9676325b49df9419f/triton_.ttgir new file mode 100644 index 0000000000000000000000000000000000000000..399ef42b5ec87a0fb31cd8c40e9a727fcc1a63f6 --- /dev/null +++ b/.triton/dump/ab89f85e55d5ddd9676325b49df9419f/triton_.ttgir @@ -0,0 +1,68 @@ +#blocked = #triton_gpu.blocked<{sizePerThread = [4], threadsPerWarp = [32], warpsPerCTA = [2], order = [0], CTAsPerCGA = [1], CTASplitNum = [1], CTAOrder = [0]}> +#blocked1 = #triton_gpu.blocked<{sizePerThread = [1], threadsPerWarp = [32], warpsPerCTA = [2], order = [0], CTAsPerCGA = [1], CTASplitNum = [1], CTAOrder = [0]}> +module attributes {"triton_gpu.compute-capability" = 89 : i32, "triton_gpu.num-ctas" = 1 : i32, "triton_gpu.num-warps" = 2 : i32, "triton_gpu.threads-per-warp" = 32 : i32} { + tt.func public @triton__0d1d2d3d4d5d6de7de(%arg0: !tt.ptr {tt.divisibility = 16 : i32}, %arg1: !tt.ptr {tt.divisibility = 16 : i32}, %arg2: !tt.ptr {tt.divisibility = 16 : i32}, %arg3: !tt.ptr {tt.divisibility = 16 : i32}, %arg4: !tt.ptr {tt.divisibility = 16 : i32}, %arg5: !tt.ptr {tt.divisibility = 16 : i32}, %arg6: i32 {tt.divisibility = 16 : i32, tt.max_divisibility = 16 : i32}, %arg7: i32 {tt.divisibility = 16 : i32, tt.max_divisibility = 16 : i32}) attributes {noinline = false} { + %cst = arith.constant dense<256> : tensor<256xi32, #blocked> + %cst_0 = arith.constant 9.99999974E-6 : f32 + %cst_1 = arith.constant 2.560000e+02 : f32 + %cst_2 = arith.constant 0.000000e+00 : f32 + %c256_i32 = arith.constant 256 : i32 + %cst_3 = arith.constant dense<0.000000e+00> : tensor<256xf32, #blocked> + %cst_4 = arith.constant dense<0.000000e+00> : tensor<256xbf16, #blocked> + %0 = tt.get_program_id x : i32 + %1 = tt.make_range {end = 256 : i32, start = 0 : i32} : tensor<256xi32, #blocked> + %2 = arith.cmpi slt, %1, %cst : tensor<256xi32, #blocked> + %3 = arith.muli %0, %c256_i32 : i32 + %4 = tt.splat %3 : (i32) -> tensor<256xi32, #blocked> + %5 = arith.addi %1, %4 : tensor<256xi32, #blocked> + %6 = tt.splat %arg1 : (!tt.ptr) -> tensor<256x!tt.ptr, #blocked> + %7 = tt.addptr %6, %5 : tensor<256x!tt.ptr, #blocked>, tensor<256xi32, #blocked> + %8 = tt.load %7, %2, %cst_3 {cache = 1 : i32, evict = 1 : i32, isVolatile = false} : tensor<256xf32, #blocked> + %9 = tt.splat %arg2 : (!tt.ptr) -> tensor<256x!tt.ptr, #blocked> + %10 = tt.addptr %9, %5 : tensor<256x!tt.ptr, #blocked>, tensor<256xi32, #blocked> + %11 = tt.load %10, %2, %cst_4 {cache = 1 : i32, evict = 1 : i32, isVolatile = false} : tensor<256xbf16, #blocked> + %12 = arith.extf %11 : tensor<256xbf16, #blocked> to tensor<256xf32, #blocked> + %13 = tt.splat %arg3 : (!tt.ptr) -> tensor<256x!tt.ptr, #blocked> + %14 = tt.addptr %13, %1 : tensor<256x!tt.ptr, #blocked>, tensor<256xi32, #blocked> + %15 = tt.load %14, %2, %cst_3 {cache = 1 : i32, evict = 3 : i32, isVolatile = false} : tensor<256xf32, #blocked> + %16 = arith.addf %8, %12 : tensor<256xf32, #blocked> + %17 = arith.select %2, %16, %cst_3 : tensor<256xi1, #blocked>, tensor<256xf32, #blocked> + %18 = "tt.reduce"(%17) <{axis = 0 : i32}> ({ + ^bb0(%arg8: f32, %arg9: f32): + %42 = arith.addf %arg8, %arg9 : f32 + tt.reduce.return %42 : f32 + }) : (tensor<256xf32, #blocked>) -> f32 + %19 = arith.addf %18, %cst_2 : f32 + %20 = arith.divf %19, %cst_1 : f32 + %21 = tt.splat %20 : (f32) -> tensor<1xf32, #blocked1> + %22 = tt.splat %20 : (f32) -> tensor<256xf32, #blocked> + %23 = arith.subf %16, %22 : tensor<256xf32, #blocked> + %24 = arith.mulf %23, %23 : tensor<256xf32, #blocked> + %25 = arith.select %2, %24, %cst_3 : tensor<256xi1, #blocked>, tensor<256xf32, #blocked> + %26 = "tt.reduce"(%25) <{axis = 0 : i32}> ({ + ^bb0(%arg8: f32, %arg9: f32): + %42 = arith.addf %arg8, %arg9 : f32 + tt.reduce.return %42 : f32 + }) : (tensor<256xf32, #blocked>) -> f32 + %27 = arith.addf %26, %cst_2 : f32 + %28 = arith.divf %27, %cst_1 : f32 + %29 = arith.addf %28, %cst_0 : f32 + %30 = tt.extern_elementwise %29 {libname = "libdevice", libpath = "/usr/local/lib/python3.10/dist-packages/triton/language/../third_party/cuda/lib/libdevice.10.bc", pure = true, symbol = "__nv_rsqrtf"} : (f32) -> f32 + %31 = tt.splat %30 : (f32) -> tensor<1xf32, #blocked1> + %32 = tt.splat %30 : (f32) -> tensor<256xf32, #blocked> + %33 = arith.mulf %23, %32 : tensor<256xf32, #blocked> + %34 = arith.mulf %33, %15 : tensor<256xf32, #blocked> + gpu.barrier + %35 = tt.addptr %arg0, %0 : !tt.ptr, i32 + %36 = tt.splat %35 : (!tt.ptr) -> tensor<1x!tt.ptr, #blocked1> + tt.store %36, %31 {cache = 1 : i32, evict = 1 : i32} : tensor<1xf32, #blocked1> + %37 = tt.splat %arg5 : (!tt.ptr) -> tensor<256x!tt.ptr, #blocked> + %38 = tt.addptr %37, %5 : tensor<256x!tt.ptr, #blocked>, tensor<256xi32, #blocked> + %39 = arith.truncf %34 : tensor<256xf32, #blocked> to tensor<256xbf16, #blocked> + tt.store %38, %39, %2 {cache = 1 : i32, evict = 1 : i32} : tensor<256xbf16, #blocked> + %40 = tt.addptr %arg4, %0 : !tt.ptr, i32 + %41 = tt.splat %40 : (!tt.ptr) -> tensor<1x!tt.ptr, #blocked1> + tt.store %41, %21 {cache = 1 : i32, evict = 1 : i32} : tensor<1xf32, #blocked1> + tt.return + } +} diff --git a/.triton/dump/be28ee3793470d9803546f03e49c3edf/triton_.cubin b/.triton/dump/be28ee3793470d9803546f03e49c3edf/triton_.cubin new file mode 100644 index 0000000000000000000000000000000000000000..e074b9d372d84a1a4da509c728ddc0c3845f9ce0 Binary files /dev/null and b/.triton/dump/be28ee3793470d9803546f03e49c3edf/triton_.cubin differ diff --git a/.triton/dump/be28ee3793470d9803546f03e49c3edf/triton_.ttgir b/.triton/dump/be28ee3793470d9803546f03e49c3edf/triton_.ttgir new file mode 100644 index 0000000000000000000000000000000000000000..b0f92595d375dbab57962c996ddef72b08d4f511 --- /dev/null +++ b/.triton/dump/be28ee3793470d9803546f03e49c3edf/triton_.ttgir @@ -0,0 +1,85 @@ +#blocked = #triton_gpu.blocked<{sizePerThread = [4], threadsPerWarp = [32], warpsPerCTA = [2], order = [0], CTAsPerCGA = [1], CTASplitNum = [1], CTAOrder = [0]}> +#blocked1 = #triton_gpu.blocked<{sizePerThread = [1], threadsPerWarp = [32], warpsPerCTA = [2], order = [0], CTAsPerCGA = [1], CTASplitNum = [1], CTAOrder = [0]}> +module attributes {"triton_gpu.compute-capability" = 89 : i32, "triton_gpu.num-ctas" = 1 : i32, "triton_gpu.num-warps" = 2 : i32, "triton_gpu.threads-per-warp" = 32 : i32} { + tt.func public @triton__0d1d2d3d4d5d6d7d8d9d10de11de(%arg0: !tt.ptr {tt.divisibility = 16 : i32}, %arg1: !tt.ptr {tt.divisibility = 16 : i32}, %arg2: !tt.ptr {tt.divisibility = 16 : i32}, %arg3: !tt.ptr {tt.divisibility = 16 : i32}, %arg4: !tt.ptr {tt.divisibility = 16 : i32}, %arg5: !tt.ptr {tt.divisibility = 16 : i32}, %arg6: !tt.ptr {tt.divisibility = 16 : i32}, %arg7: !tt.ptr {tt.divisibility = 16 : i32}, %arg8: !tt.ptr {tt.divisibility = 16 : i32}, %arg9: !tt.ptr {tt.divisibility = 16 : i32}, %arg10: i32 {tt.divisibility = 16 : i32, tt.max_divisibility = 16 : i32}, %arg11: i32 {tt.divisibility = 16 : i32, tt.max_divisibility = 16 : i32}) attributes {noinline = false} { + %cst = arith.constant dense<256> : tensor<256xi32, #blocked> + %cst_0 = arith.constant 9.99999974E-6 : f32 + %cst_1 = arith.constant 2.560000e+02 : f32 + %cst_2 = arith.constant 0.000000e+00 : f32 + %c256_i32 = arith.constant 256 : i32 + %cst_3 = arith.constant dense<0.000000e+00> : tensor<256xf32, #blocked> + %cst_4 = arith.constant dense<0.000000e+00> : tensor<256xbf16, #blocked> + %0 = tt.get_program_id x : i32 + %1 = tt.make_range {end = 256 : i32, start = 0 : i32} : tensor<256xi32, #blocked> + %2 = arith.cmpi slt, %1, %cst : tensor<256xi32, #blocked> + %3 = arith.muli %0, %c256_i32 : i32 + %4 = tt.splat %3 : (i32) -> tensor<256xi32, #blocked> + %5 = arith.addi %1, %4 : tensor<256xi32, #blocked> + %6 = tt.splat %arg1 : (!tt.ptr) -> tensor<256x!tt.ptr, #blocked> + %7 = tt.addptr %6, %5 : tensor<256x!tt.ptr, #blocked>, tensor<256xi32, #blocked> + %8 = tt.load %7, %2, %cst_3 {cache = 1 : i32, evict = 1 : i32, isVolatile = false} : tensor<256xf32, #blocked> + %9 = tt.splat %arg2 : (!tt.ptr) -> tensor<256x!tt.ptr, #blocked> + %10 = tt.addptr %9, %5 : tensor<256x!tt.ptr, #blocked>, tensor<256xi32, #blocked> + %11 = tt.load %10, %2, %cst_4 {cache = 1 : i32, evict = 1 : i32, isVolatile = false} : tensor<256xbf16, #blocked> + %12 = arith.extf %11 : tensor<256xbf16, #blocked> to tensor<256xf32, #blocked> + %13 = tt.splat %arg3 : (!tt.ptr) -> tensor<256x!tt.ptr, #blocked> + %14 = tt.addptr %13, %5 : tensor<256x!tt.ptr, #blocked>, tensor<256xi32, #blocked> + %15 = tt.load %14, %2, %cst_4 {cache = 1 : i32, evict = 1 : i32, isVolatile = false} : tensor<256xbf16, #blocked> + %16 = arith.extf %15 : tensor<256xbf16, #blocked> to tensor<256xf32, #blocked> + %17 = tt.splat %arg4 : (!tt.ptr) -> tensor<256x!tt.ptr, #blocked> + %18 = tt.addptr %17, %5 : tensor<256x!tt.ptr, #blocked>, tensor<256xi32, #blocked> + %19 = tt.load %18, %2, %cst_4 {cache = 1 : i32, evict = 1 : i32, isVolatile = false} : tensor<256xbf16, #blocked> + %20 = arith.extf %19 : tensor<256xbf16, #blocked> to tensor<256xf32, #blocked> + %21 = tt.splat %arg5 : (!tt.ptr) -> tensor<256x!tt.ptr, #blocked> + %22 = tt.addptr %21, %5 : tensor<256x!tt.ptr, #blocked>, tensor<256xi32, #blocked> + %23 = tt.load %22, %2, %cst_4 {cache = 1 : i32, evict = 1 : i32, isVolatile = false} : tensor<256xbf16, #blocked> + %24 = arith.extf %23 : tensor<256xbf16, #blocked> to tensor<256xf32, #blocked> + %25 = tt.splat %arg6 : (!tt.ptr) -> tensor<256x!tt.ptr, #blocked> + %26 = tt.addptr %25, %1 : tensor<256x!tt.ptr, #blocked>, tensor<256xi32, #blocked> + %27 = tt.load %26, %2, %cst_3 {cache = 1 : i32, evict = 3 : i32, isVolatile = false} : tensor<256xf32, #blocked> + %28 = arith.addf %8, %12 : tensor<256xf32, #blocked> + %29 = arith.addf %28, %16 : tensor<256xf32, #blocked> + %30 = arith.addf %29, %20 : tensor<256xf32, #blocked> + %31 = arith.addf %30, %24 : tensor<256xf32, #blocked> + %32 = arith.select %2, %31, %cst_3 : tensor<256xi1, #blocked>, tensor<256xf32, #blocked> + %33 = "tt.reduce"(%32) <{axis = 0 : i32}> ({ + ^bb0(%arg12: f32, %arg13: f32): + %58 = arith.addf %arg12, %arg13 : f32 + tt.reduce.return %58 : f32 + }) : (tensor<256xf32, #blocked>) -> f32 + %34 = arith.addf %33, %cst_2 : f32 + %35 = arith.divf %34, %cst_1 : f32 + %36 = tt.splat %35 : (f32) -> tensor<1xf32, #blocked1> + %37 = tt.splat %35 : (f32) -> tensor<256xf32, #blocked> + %38 = arith.subf %31, %37 : tensor<256xf32, #blocked> + %39 = arith.mulf %38, %38 : tensor<256xf32, #blocked> + %40 = arith.select %2, %39, %cst_3 : tensor<256xi1, #blocked>, tensor<256xf32, #blocked> + %41 = "tt.reduce"(%40) <{axis = 0 : i32}> ({ + ^bb0(%arg12: f32, %arg13: f32): + %58 = arith.addf %arg12, %arg13 : f32 + tt.reduce.return %58 : f32 + }) : (tensor<256xf32, #blocked>) -> f32 + %42 = arith.addf %41, %cst_2 : f32 + %43 = arith.divf %42, %cst_1 : f32 + %44 = arith.addf %43, %cst_0 : f32 + %45 = tt.extern_elementwise %44 {libname = "libdevice", libpath = "/usr/local/lib/python3.10/dist-packages/triton/language/../third_party/cuda/lib/libdevice.10.bc", pure = true, symbol = "__nv_rsqrtf"} : (f32) -> f32 + %46 = tt.splat %45 : (f32) -> tensor<1xf32, #blocked1> + %47 = tt.splat %45 : (f32) -> tensor<256xf32, #blocked> + %48 = arith.mulf %38, %47 : tensor<256xf32, #blocked> + %49 = arith.mulf %48, %27 : tensor<256xf32, #blocked> + %50 = tt.splat %arg7 : (!tt.ptr) -> tensor<256x!tt.ptr, #blocked> + %51 = tt.addptr %50, %5 : tensor<256x!tt.ptr, #blocked>, tensor<256xi32, #blocked> + tt.store %51, %31, %2 {cache = 1 : i32, evict = 1 : i32} : tensor<256xf32, #blocked> + gpu.barrier + %52 = tt.addptr %arg0, %0 : !tt.ptr, i32 + %53 = tt.splat %52 : (!tt.ptr) -> tensor<1x!tt.ptr, #blocked1> + tt.store %53, %46 {cache = 1 : i32, evict = 1 : i32} : tensor<1xf32, #blocked1> + %54 = tt.splat %arg9 : (!tt.ptr) -> tensor<256x!tt.ptr, #blocked> + %55 = tt.addptr %54, %5 : tensor<256x!tt.ptr, #blocked>, tensor<256xi32, #blocked> + tt.store %55, %49, %2 {cache = 1 : i32, evict = 1 : i32} : tensor<256xf32, #blocked> + %56 = tt.addptr %arg8, %0 : !tt.ptr, i32 + %57 = tt.splat %56 : (!tt.ptr) -> tensor<1x!tt.ptr, #blocked1> + tt.store %57, %36 {cache = 1 : i32, evict = 1 : i32} : tensor<1xf32, #blocked1> + tt.return + } +} diff --git a/.triton/dump/c0c34db8f5ff22b79fc971c63187477a/triton_.cubin b/.triton/dump/c0c34db8f5ff22b79fc971c63187477a/triton_.cubin new file mode 100644 index 0000000000000000000000000000000000000000..58b68f531e3ed047ed126b6ccca299585818a33e Binary files /dev/null and b/.triton/dump/c0c34db8f5ff22b79fc971c63187477a/triton_.cubin differ diff --git a/.triton/dump/c0c34db8f5ff22b79fc971c63187477a/triton_.ttir b/.triton/dump/c0c34db8f5ff22b79fc971c63187477a/triton_.ttir new file mode 100644 index 0000000000000000000000000000000000000000..0eae227863953d10aa2a47b69618c30ffc4b9683 --- /dev/null +++ b/.triton/dump/c0c34db8f5ff22b79fc971c63187477a/triton_.ttir @@ -0,0 +1,84 @@ +module { + tt.func public @triton__0d1d2d3d4d5d6d7d8d9d10de11de(%arg0: !tt.ptr {tt.divisibility = 16 : i32}, %arg1: !tt.ptr {tt.divisibility = 16 : i32}, %arg2: !tt.ptr {tt.divisibility = 16 : i32}, %arg3: !tt.ptr {tt.divisibility = 16 : i32}, %arg4: !tt.ptr {tt.divisibility = 16 : i32}, %arg5: !tt.ptr {tt.divisibility = 16 : i32}, %arg6: !tt.ptr {tt.divisibility = 16 : i32}, %arg7: !tt.ptr {tt.divisibility = 16 : i32}, %arg8: !tt.ptr {tt.divisibility = 16 : i32}, %arg9: !tt.ptr {tt.divisibility = 16 : i32}, %arg10: i32 {tt.divisibility = 16 : i32, tt.max_divisibility = 16 : i32}, %arg11: i32 {tt.divisibility = 16 : i32, tt.max_divisibility = 16 : i32}) attributes {noinline = false} { + %c256_i32 = arith.constant 256 : i32 + %cst = arith.constant dense<0.000000e+00> : tensor<256xbf16> + %cst_0 = arith.constant 0.000000e+00 : f32 + %cst_1 = arith.constant 2.560000e+02 : f32 + %cst_2 = arith.constant 9.99999974E-6 : f32 + %cst_3 = arith.constant dense<0.000000e+00> : tensor<256xf32> + %cst_4 = arith.constant dense<256> : tensor<256xi32> + %0 = tt.get_program_id x : i32 + %1 = tt.make_range {end = 256 : i32, start = 0 : i32} : tensor<256xi32> + %2 = arith.cmpi slt, %1, %cst_4 : tensor<256xi32> + %3 = arith.muli %0, %c256_i32 : i32 + %4 = tt.splat %3 : (i32) -> tensor<256xi32> + %5 = arith.addi %1, %4 : tensor<256xi32> + %6 = tt.splat %arg1 : (!tt.ptr) -> tensor<256x!tt.ptr> + %7 = tt.addptr %6, %5 : tensor<256x!tt.ptr>, tensor<256xi32> + %8 = tt.load %7, %2, %cst_3 {cache = 1 : i32, evict = 1 : i32, isVolatile = false} : tensor<256xf32> + %9 = tt.splat %arg2 : (!tt.ptr) -> tensor<256x!tt.ptr> + %10 = tt.addptr %9, %5 : tensor<256x!tt.ptr>, tensor<256xi32> + %11 = tt.load %10, %2, %cst {cache = 1 : i32, evict = 1 : i32, isVolatile = false} : tensor<256xbf16> + %12 = arith.extf %11 : tensor<256xbf16> to tensor<256xf32> + %13 = tt.splat %arg3 : (!tt.ptr) -> tensor<256x!tt.ptr> + %14 = tt.addptr %13, %5 : tensor<256x!tt.ptr>, tensor<256xi32> + %15 = tt.load %14, %2, %cst {cache = 1 : i32, evict = 1 : i32, isVolatile = false} : tensor<256xbf16> + %16 = arith.extf %15 : tensor<256xbf16> to tensor<256xf32> + %17 = tt.splat %arg4 : (!tt.ptr) -> tensor<256x!tt.ptr> + %18 = tt.addptr %17, %5 : tensor<256x!tt.ptr>, tensor<256xi32> + %19 = tt.load %18, %2, %cst {cache = 1 : i32, evict = 1 : i32, isVolatile = false} : tensor<256xbf16> + %20 = arith.extf %19 : tensor<256xbf16> to tensor<256xf32> + %21 = tt.splat %arg5 : (!tt.ptr) -> tensor<256x!tt.ptr> + %22 = tt.addptr %21, %5 : tensor<256x!tt.ptr>, tensor<256xi32> + %23 = tt.load %22, %2, %cst {cache = 1 : i32, evict = 1 : i32, isVolatile = false} : tensor<256xbf16> + %24 = arith.extf %23 : tensor<256xbf16> to tensor<256xf32> + %25 = tt.splat %arg6 : (!tt.ptr) -> tensor<256x!tt.ptr> + %26 = tt.addptr %25, %1 : tensor<256x!tt.ptr>, tensor<256xi32> + %27 = tt.load %26, %2, %cst_3 {cache = 1 : i32, evict = 3 : i32, isVolatile = false} : tensor<256xf32> + %28 = arith.addf %8, %12 : tensor<256xf32> + %29 = arith.addf %28, %16 : tensor<256xf32> + %30 = arith.addf %29, %20 : tensor<256xf32> + %31 = arith.addf %30, %24 : tensor<256xf32> + %32 = arith.select %2, %31, %cst_3 : tensor<256xi1>, tensor<256xf32> + %33 = "tt.reduce"(%32) <{axis = 0 : i32}> ({ + ^bb0(%arg12: f32, %arg13: f32): + %59 = arith.addf %arg12, %arg13 : f32 + tt.reduce.return %59 : f32 + }) : (tensor<256xf32>) -> f32 + %34 = arith.addf %33, %cst_0 : f32 + %35 = arith.divf %34, %cst_1 : f32 + %36 = tt.splat %35 : (f32) -> tensor<1xf32> + %37 = tt.splat %35 : (f32) -> tensor<256xf32> + %38 = arith.subf %31, %37 : tensor<256xf32> + %39 = arith.mulf %38, %38 : tensor<256xf32> + %40 = arith.select %2, %39, %cst_3 : tensor<256xi1>, tensor<256xf32> + %41 = "tt.reduce"(%40) <{axis = 0 : i32}> ({ + ^bb0(%arg12: f32, %arg13: f32): + %59 = arith.addf %arg12, %arg13 : f32 + tt.reduce.return %59 : f32 + }) : (tensor<256xf32>) -> f32 + %42 = arith.addf %41, %cst_0 : f32 + %43 = arith.divf %42, %cst_1 : f32 + %44 = arith.addf %43, %cst_2 : f32 + %45 = tt.extern_elementwise %44 {libname = "libdevice", libpath = "/usr/local/lib/python3.10/dist-packages/triton/language/../third_party/cuda/lib/libdevice.10.bc", pure = true, symbol = "__nv_rsqrtf"} : (f32) -> f32 + %46 = tt.splat %45 : (f32) -> tensor<1xf32> + %47 = tt.splat %45 : (f32) -> tensor<256xf32> + %48 = arith.mulf %38, %47 : tensor<256xf32> + %49 = arith.mulf %48, %27 : tensor<256xf32> + %50 = tt.splat %arg7 : (!tt.ptr) -> tensor<256x!tt.ptr> + %51 = tt.addptr %50, %5 : tensor<256x!tt.ptr>, tensor<256xi32> + tt.store %51, %31, %2 {cache = 1 : i32, evict = 1 : i32} : tensor<256xf32> + gpu.barrier + %52 = tt.addptr %arg0, %0 : !tt.ptr, i32 + %53 = tt.splat %52 : (!tt.ptr) -> tensor<1x!tt.ptr> + tt.store %53, %46 {cache = 1 : i32, evict = 1 : i32} : tensor<1xf32> + %54 = tt.splat %arg9 : (!tt.ptr) -> tensor<256x!tt.ptr> + %55 = tt.addptr %54, %5 : tensor<256x!tt.ptr>, tensor<256xi32> + %56 = arith.truncf %49 : tensor<256xf32> to tensor<256xbf16> + tt.store %55, %56, %2 {cache = 1 : i32, evict = 1 : i32} : tensor<256xbf16> + %57 = tt.addptr %arg8, %0 : !tt.ptr, i32 + %58 = tt.splat %57 : (!tt.ptr) -> tensor<1x!tt.ptr> + tt.store %58, %36 {cache = 1 : i32, evict = 1 : i32} : tensor<1xf32> + tt.return + } +} diff --git a/.triton/dump/c0db4dd81e5aac83500e3ccf67d3896d/triton_.llir b/.triton/dump/c0db4dd81e5aac83500e3ccf67d3896d/triton_.llir new file mode 100644 index 0000000000000000000000000000000000000000..a67fb8475b0d70f91b0a213d80287b9e5712224e --- /dev/null +++ b/.triton/dump/c0db4dd81e5aac83500e3ccf67d3896d/triton_.llir @@ -0,0 +1,53 @@ +; ModuleID = 'LLVMDialectModule' +source_filename = "LLVMDialectModule" + +define void @triton__0d1d2de(ptr addrspace(1) %0, ptr addrspace(1) %1, i32 %2) local_unnamed_addr !dbg !5 { + %4 = tail call i32 @llvm.nvvm.read.ptx.sreg.tid.x(), !dbg !8 + %5 = shl i32 %4, 1, !dbg !8 + %6 = and i32 %5, 510, !dbg !8 + %7 = tail call i32 asm "mov.u32 $0, %ctaid.x;", "=r"() #1, !dbg !9 + %8 = shl i32 %7, 9, !dbg !10 + %9 = or i32 %8, %6, !dbg !11 + %10 = sext i32 %9 to i64, !dbg !12 + %11 = getelementptr i16, ptr addrspace(1) %0, i64 %10, !dbg !12 + %12 = tail call i32 asm sideeffect "mov.u32 $0, 0x0;\0A\09@$2 ld.global.b32 { $0 }, [ $1 + 0 ];", "=r,l,b"(ptr addrspace(1) %11, i1 true) #1, !dbg !13 + %13 = trunc i32 %12 to i16, !dbg !13 + %extelt.offset = lshr i32 %12, 16, !dbg !13 + %14 = trunc i32 %extelt.offset to i16, !dbg !13 + %15 = tail call float asm "cvt.f32.bf16 $0, $1;", "=r,h"(i16 %13) #1, !dbg !14 + %16 = tail call float asm "cvt.f32.bf16 $0, $1;", "=r,h"(i16 %14) #1, !dbg !14 + %17 = getelementptr float, ptr addrspace(1) %1, i64 %10, !dbg !15 + %18 = bitcast float %15 to i32, !dbg !16 + %19 = bitcast float %16 to i32, !dbg !16 + tail call void asm sideeffect "@$3 st.global.v2.b32 [ $2 + 0 ], { $0, $1 };", "r,r,l,b"(i32 %18, i32 %19, ptr addrspace(1) %17, i1 true) #1, !dbg !16 + ret void, !dbg !17 +} + +; Function Attrs: mustprogress nocallback nofree nosync nounwind speculatable willreturn memory(none) +declare noundef i32 @llvm.nvvm.read.ptx.sreg.tid.x() #0 + +attributes #0 = { mustprogress nocallback nofree nosync nounwind speculatable willreturn memory(none) } +attributes #1 = { nounwind } + +!llvm.module.flags = !{!0} +!llvm.dbg.cu = !{!1} +!nvvm.annotations = !{!3, !4, !4, !3} + +!0 = !{i32 2, !"Debug Info Version", i32 3} +!1 = distinct !DICompileUnit(language: DW_LANG_C, file: !2, producer: "triton", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug) +!2 = !DIFile(filename: "cyamhdbxtmf4rgres6uo7orhfzw3ryhsvm5qzdvyqgggck2hqbyi.py", directory: "/tmp/torchinductor_root/ya") +!3 = !{ptr @triton__0d1d2de, !"kernel", i32 1} +!4 = !{ptr @triton__0d1d2de, !"maxntidx", i32 256} +!5 = distinct !DISubprogram(name: "triton__0d1d2de", linkageName: "triton__0d1d2de", scope: !2, file: !2, line: 18, type: !6, scopeLine: 18, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !1) +!6 = !DISubroutineType(cc: DW_CC_normal, types: !7) +!7 = !{} +!8 = !DILocation(line: 21, column: 36, scope: !5) +!9 = !DILocation(line: 20, column: 28, scope: !5) +!10 = !DILocation(line: 20, column: 33, scope: !5) +!11 = !DILocation(line: 21, column: 23, scope: !5) +!12 = !DILocation(line: 24, column: 30, scope: !5) +!13 = !DILocation(line: 24, column: 35, scope: !5) +!14 = !DILocation(line: 24, column: 44, scope: !5) +!15 = !DILocation(line: 26, column: 25, scope: !5) +!16 = !DILocation(line: 26, column: 36, scope: !5) +!17 = !DILocation(line: 26, column: 4, scope: !5) diff --git a/.triton/dump/d7a12c0ba96f8920b8147157303ee99f/triton_.ttir b/.triton/dump/d7a12c0ba96f8920b8147157303ee99f/triton_.ttir new file mode 100644 index 0000000000000000000000000000000000000000..678dfd5327d867e46e71eab8d5ce7a215016f7ae --- /dev/null +++ b/.triton/dump/d7a12c0ba96f8920b8147157303ee99f/triton_.ttir @@ -0,0 +1,62 @@ +module { + tt.func public @triton__0d1d2d3d4d5de6de(%arg0: !tt.ptr {tt.divisibility = 16 : i32}, %arg1: !tt.ptr {tt.divisibility = 16 : i32}, %arg2: !tt.ptr {tt.divisibility = 16 : i32}, %arg3: !tt.ptr {tt.divisibility = 16 : i32}, %arg4: !tt.ptr {tt.divisibility = 16 : i32}, %arg5: i32 {tt.divisibility = 16 : i32, tt.max_divisibility = 16 : i32}, %arg6: i32 {tt.divisibility = 16 : i32, tt.max_divisibility = 16 : i32}) attributes {noinline = false} { + %c256_i32 = arith.constant 256 : i32 + %cst = arith.constant dense<0.000000e+00> : tensor<256xbf16> + %cst_0 = arith.constant 0.000000e+00 : f32 + %cst_1 = arith.constant 2.560000e+02 : f32 + %cst_2 = arith.constant 9.99999974E-6 : f32 + %cst_3 = arith.constant dense<0.000000e+00> : tensor<256xf32> + %cst_4 = arith.constant dense<256> : tensor<256xi32> + %0 = tt.get_program_id x : i32 + %1 = tt.make_range {end = 256 : i32, start = 0 : i32} : tensor<256xi32> + %2 = arith.cmpi slt, %1, %cst_4 : tensor<256xi32> + %3 = arith.muli %0, %c256_i32 : i32 + %4 = tt.splat %3 : (i32) -> tensor<256xi32> + %5 = arith.addi %1, %4 : tensor<256xi32> + %6 = tt.splat %arg0 : (!tt.ptr) -> tensor<256x!tt.ptr> + %7 = tt.addptr %6, %5 : tensor<256x!tt.ptr>, tensor<256xi32> + %8 = tt.load %7, %2, %cst_3 {cache = 1 : i32, evict = 1 : i32, isVolatile = false} : tensor<256xf32> + %9 = tt.splat %arg1 : (!tt.ptr) -> tensor<256x!tt.ptr> + %10 = tt.addptr %9, %5 : tensor<256x!tt.ptr>, tensor<256xi32> + %11 = tt.load %10, %2, %cst {cache = 1 : i32, evict = 1 : i32, isVolatile = false} : tensor<256xbf16> + %12 = arith.extf %11 : tensor<256xbf16> to tensor<256xf32> + %13 = tt.splat %arg2 : (!tt.ptr) -> tensor<256x!tt.ptr> + %14 = tt.addptr %13, %5 : tensor<256x!tt.ptr>, tensor<256xi32> + %15 = tt.load %14, %2, %cst {cache = 1 : i32, evict = 1 : i32, isVolatile = false} : tensor<256xbf16> + %16 = arith.extf %15 : tensor<256xbf16> to tensor<256xf32> + %17 = tt.splat %arg3 : (!tt.ptr) -> tensor<256x!tt.ptr> + %18 = tt.addptr %17, %1 : tensor<256x!tt.ptr>, tensor<256xi32> + %19 = tt.load %18, %2, %cst_3 {cache = 1 : i32, evict = 3 : i32, isVolatile = false} : tensor<256xf32> + %20 = arith.addf %8, %12 : tensor<256xf32> + %21 = arith.addf %20, %16 : tensor<256xf32> + %22 = arith.select %2, %21, %cst_3 : tensor<256xi1>, tensor<256xf32> + %23 = "tt.reduce"(%22) <{axis = 0 : i32}> ({ + ^bb0(%arg7: f32, %arg8: f32): + %41 = arith.addf %arg7, %arg8 : f32 + tt.reduce.return %41 : f32 + }) : (tensor<256xf32>) -> f32 + %24 = arith.addf %23, %cst_0 : f32 + %25 = arith.divf %24, %cst_1 : f32 + %26 = tt.splat %25 : (f32) -> tensor<256xf32> + %27 = arith.subf %21, %26 : tensor<256xf32> + %28 = arith.mulf %27, %27 : tensor<256xf32> + %29 = arith.select %2, %28, %cst_3 : tensor<256xi1>, tensor<256xf32> + %30 = "tt.reduce"(%29) <{axis = 0 : i32}> ({ + ^bb0(%arg7: f32, %arg8: f32): + %41 = arith.addf %arg7, %arg8 : f32 + tt.reduce.return %41 : f32 + }) : (tensor<256xf32>) -> f32 + %31 = arith.addf %30, %cst_0 : f32 + %32 = arith.divf %31, %cst_1 : f32 + %33 = arith.addf %32, %cst_2 : f32 + %34 = tt.extern_elementwise %33 {libname = "libdevice", libpath = "/usr/local/lib/python3.10/dist-packages/triton/language/../third_party/cuda/lib/libdevice.10.bc", pure = true, symbol = "__nv_rsqrtf"} : (f32) -> f32 + %35 = tt.splat %34 : (f32) -> tensor<256xf32> + %36 = arith.mulf %27, %35 : tensor<256xf32> + %37 = arith.mulf %36, %19 : tensor<256xf32> + %38 = tt.splat %arg4 : (!tt.ptr) -> tensor<256x!tt.ptr> + %39 = tt.addptr %38, %5 : tensor<256x!tt.ptr>, tensor<256xi32> + %40 = arith.truncf %37 : tensor<256xf32> to tensor<256xbf16> + tt.store %39, %40, %2 {cache = 1 : i32, evict = 1 : i32} : tensor<256xbf16> + tt.return + } +} diff --git a/.triton/dump/f5088324dcdcf6814f6743553c1321c2/triton_.llir b/.triton/dump/f5088324dcdcf6814f6743553c1321c2/triton_.llir new file mode 100644 index 0000000000000000000000000000000000000000..1ec22430a679a204886525a31faa193c5b5535ff --- /dev/null +++ b/.triton/dump/f5088324dcdcf6814f6743553c1321c2/triton_.llir @@ -0,0 +1,63 @@ +; ModuleID = 'LLVMDialectModule' +source_filename = "LLVMDialectModule" + +define void @triton__0d1d2de(ptr addrspace(1) %0, ptr addrspace(1) %1, i32 %2) local_unnamed_addr !dbg !5 { + %4 = tail call i32 @llvm.nvvm.read.ptx.sreg.tid.x(), !dbg !8 + %5 = shl i32 %4, 2, !dbg !8 + %6 = and i32 %5, 508, !dbg !8 + %7 = tail call i32 asm "mov.u32 $0, %ctaid.x;", "=r"() #1, !dbg !9 + %8 = shl i32 %7, 9, !dbg !10 + %9 = or i32 %8, %6, !dbg !11 + %10 = sext i32 %9 to i64, !dbg !12 + %11 = getelementptr float, ptr addrspace(1) %0, i64 %10, !dbg !12 + %12 = tail call { i32, i32, i32, i32 } asm sideeffect "mov.u32 $0, 0x0;\0A\09mov.u32 $1, 0x0;\0A\09mov.u32 $2, 0x0;\0A\09mov.u32 $3, 0x0;\0A\09@$5 ld.global.v4.b32 { $0, $1, $2, $3 }, [ $4 + 0 ];", "=r,=r,=r,=r,l,b"(ptr addrspace(1) %11, i1 true) #1, !dbg !13 + %13 = extractvalue { i32, i32, i32, i32 } %12, 0, !dbg !13 + %14 = extractvalue { i32, i32, i32, i32 } %12, 1, !dbg !13 + %15 = extractvalue { i32, i32, i32, i32 } %12, 2, !dbg !13 + %16 = extractvalue { i32, i32, i32, i32 } %12, 3, !dbg !13 + %17 = bitcast i32 %13 to float, !dbg !13 + %18 = bitcast i32 %14 to float, !dbg !13 + %19 = bitcast i32 %15 to float, !dbg !13 + %20 = bitcast i32 %16 to float, !dbg !13 + %21 = getelementptr i16, ptr addrspace(1) %1, i64 %10, !dbg !14 + %22 = tail call i16 asm "cvt.rn.bf16.f32 $0, $1;", "=h,r"(float %17) #1, !dbg !15 + %23 = tail call i16 asm "cvt.rn.bf16.f32 $0, $1;", "=h,r"(float %18) #1, !dbg !15 + %24 = tail call i16 asm "cvt.rn.bf16.f32 $0, $1;", "=h,r"(float %19) #1, !dbg !15 + %25 = tail call i16 asm "cvt.rn.bf16.f32 $0, $1;", "=h,r"(float %20) #1, !dbg !15 + %26 = insertelement <2 x i16> undef, i16 %22, i64 0, !dbg !15 + %27 = insertelement <2 x i16> %26, i16 %23, i64 1, !dbg !15 + %28 = bitcast <2 x i16> %27 to i32, !dbg !15 + %29 = insertelement <2 x i16> undef, i16 %24, i64 0, !dbg !15 + %30 = insertelement <2 x i16> %29, i16 %25, i64 1, !dbg !15 + %31 = bitcast <2 x i16> %30 to i32, !dbg !15 + tail call void asm sideeffect "@$3 st.global.v2.b32 [ $2 + 0 ], { $0, $1 };", "r,r,l,b"(i32 %28, i32 %31, ptr addrspace(1) %21, i1 true) #1, !dbg !15 + ret void, !dbg !16 +} + +; Function Attrs: mustprogress nocallback nofree nosync nounwind speculatable willreturn memory(none) +declare noundef i32 @llvm.nvvm.read.ptx.sreg.tid.x() #0 + +attributes #0 = { mustprogress nocallback nofree nosync nounwind speculatable willreturn memory(none) } +attributes #1 = { nounwind } + +!llvm.module.flags = !{!0} +!llvm.dbg.cu = !{!1} +!nvvm.annotations = !{!3, !4, !4, !3} + +!0 = !{i32 2, !"Debug Info Version", i32 3} +!1 = distinct !DICompileUnit(language: DW_LANG_C, file: !2, producer: "triton", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug) +!2 = !DIFile(filename: "cpqhcwm5bfrhuwddh4c4qks6bh7sovfbpfnmqhnm4h4w23icqnu6.py", directory: "/tmp/torchinductor_root/pq") +!3 = !{ptr @triton__0d1d2de, !"kernel", i32 1} +!4 = !{ptr @triton__0d1d2de, !"maxntidx", i32 128} +!5 = distinct !DISubprogram(name: "triton__0d1d2de", linkageName: "triton__0d1d2de", scope: !2, file: !2, line: 18, type: !6, scopeLine: 18, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !1) +!6 = !DISubroutineType(cc: DW_CC_normal, types: !7) +!7 = !{} +!8 = !DILocation(line: 21, column: 36, scope: !5) +!9 = !DILocation(line: 20, column: 28, scope: !5) +!10 = !DILocation(line: 20, column: 33, scope: !5) +!11 = !DILocation(line: 21, column: 23, scope: !5) +!12 = !DILocation(line: 24, column: 30, scope: !5) +!13 = !DILocation(line: 24, column: 35, scope: !5) +!14 = !DILocation(line: 26, column: 25, scope: !5) +!15 = !DILocation(line: 26, column: 36, scope: !5) +!16 = !DILocation(line: 26, column: 4, scope: !5) diff --git a/.triton/dump/f5088324dcdcf6814f6743553c1321c2/triton_.ptx b/.triton/dump/f5088324dcdcf6814f6743553c1321c2/triton_.ptx new file mode 100644 index 0000000000000000000000000000000000000000..0cfd56fc46fece9486170a40dd1f812359a81e1a --- /dev/null +++ b/.triton/dump/f5088324dcdcf6814f6743553c1321c2/triton_.ptx @@ -0,0 +1,300 @@ +// +// Generated by LLVM NVPTX Back-End +// + +.version 8.2 +.target sm_89 +.address_size 64 + + // .globl triton__0d1d2de + +.visible .entry triton__0d1d2de( + .param .u64 triton__0d1d2de_param_0, + .param .u64 triton__0d1d2de_param_1, + .param .u32 triton__0d1d2de_param_2 +) +.maxntid 128, 1, 1 +{ + .reg .pred %p<3>; + .reg .b16 %rs<5>; + .reg .b32 %r<19>; + .reg .b64 %rd<7>; + .loc 1 18 0 +$L__func_begin0: + .loc 1 18 0 + + ld.param.u64 %rd3, [triton__0d1d2de_param_0]; + ld.param.u64 %rd4, [triton__0d1d2de_param_1]; +$L__tmp0: + .loc 1 21 36 + mov.u32 %r12, %tid.x; + shl.b32 %r13, %r12, 2; + and.b32 %r14, %r13, 508; + .loc 1 20 28 + mov.u32 %r1, %ctaid.x; + .loc 1 20 33 + shl.b32 %r15, %r1, 9; + .loc 1 21 23 + or.b32 %r16, %r15, %r14; + .loc 1 24 30 + mul.wide.s32 %rd5, %r16, 4; + add.s64 %rd1, %rd3, %rd5; + mov.pred %p1, -1; + .loc 1 24 35 + mov.u32 %r6, 0x0; + mov.u32 %r7, 0x0; + mov.u32 %r8, 0x0; + mov.u32 %r9, 0x0; + @%p1 ld.global.v4.b32 { %r6, %r7, %r8, %r9 }, [ %rd1 + 0 ]; + .loc 1 26 25 + mul.wide.s32 %rd6, %r16, 2; + add.s64 %rd2, %rd4, %rd6; + .loc 1 26 36 + cvt.rn.bf16.f32 %rs1, %r6; + cvt.rn.bf16.f32 %rs2, %r7; + cvt.rn.bf16.f32 %rs3, %r8; + cvt.rn.bf16.f32 %rs4, %r9; + mov.b32 %r17, {%rs1, %rs2}; + mov.b32 %r18, {%rs3, %rs4}; + @%p1 st.global.v2.b32 [ %rd2 + 0 ], { %r17, %r18 }; + .loc 1 26 4 + ret; +$L__tmp1: +$L__func_end0: + +} + .file 1 "/tmp/torchinductor_root/pq/cpqhcwm5bfrhuwddh4c4qks6bh7sovfbpfnmqhnm4h4w23icqnu6.py" + .section .debug_abbrev + { +.b8 1 +.b8 17 +.b8 1 +.b8 37 +.b8 8 +.b8 19 +.b8 5 +.b8 3 +.b8 8 +.b8 16 +.b8 6 +.b8 27 +.b8 8 +.b8 180 +.b8 66 +.b8 12 +.b8 17 +.b8 1 +.b8 18 +.b8 1 +.b8 0 +.b8 0 +.b8 2 +.b8 46 +.b8 0 +.b8 17 +.b8 1 +.b8 18 +.b8 1 +.b8 64 +.b8 10 +.b8 135 +.b8 64 +.b8 8 +.b8 3 +.b8 8 +.b8 58 +.b8 11 +.b8 59 +.b8 11 +.b8 63 +.b8 12 +.b8 0 +.b8 0 +.b8 0 + } + .section .debug_info + { +.b32 176 +.b8 2 +.b8 0 +.b32 .debug_abbrev +.b8 8 +.b8 1 +.b8 116 +.b8 114 +.b8 105 +.b8 116 +.b8 111 +.b8 110 +.b8 0 +.b8 2 +.b8 0 +.b8 99 +.b8 112 +.b8 113 +.b8 104 +.b8 99 +.b8 119 +.b8 109 +.b8 53 +.b8 98 +.b8 102 +.b8 114 +.b8 104 +.b8 117 +.b8 119 +.b8 100 +.b8 100 +.b8 104 +.b8 52 +.b8 99 +.b8 52 +.b8 113 +.b8 107 +.b8 115 +.b8 54 +.b8 98 +.b8 104 +.b8 55 +.b8 115 +.b8 111 +.b8 118 +.b8 102 +.b8 98 +.b8 112 +.b8 102 +.b8 110 +.b8 109 +.b8 113 +.b8 104 +.b8 110 +.b8 109 +.b8 52 +.b8 104 +.b8 52 +.b8 119 +.b8 50 +.b8 51 +.b8 105 +.b8 99 +.b8 113 +.b8 110 +.b8 117 +.b8 54 +.b8 46 +.b8 112 +.b8 121 +.b8 0 +.b32 .debug_line +.b8 47 +.b8 116 +.b8 109 +.b8 112 +.b8 47 +.b8 116 +.b8 111 +.b8 114 +.b8 99 +.b8 104 +.b8 105 +.b8 110 +.b8 100 +.b8 117 +.b8 99 +.b8 116 +.b8 111 +.b8 114 +.b8 95 +.b8 114 +.b8 111 +.b8 111 +.b8 116 +.b8 47 +.b8 112 +.b8 113 +.b8 0 +.b8 1 +.b64 $L__func_begin0 +.b64 $L__func_end0 +.b8 2 +.b64 $L__func_begin0 +.b64 $L__func_end0 +.b8 1 +.b8 156 +.b8 116 +.b8 114 +.b8 105 +.b8 116 +.b8 111 +.b8 110 +.b8 95 +.b8 95 +.b8 48 +.b8 100 +.b8 49 +.b8 100 +.b8 50 +.b8 100 +.b8 101 +.b8 0 +.b8 116 +.b8 114 +.b8 105 +.b8 116 +.b8 111 +.b8 110 +.b8 95 +.b8 95 +.b8 48 +.b8 100 +.b8 49 +.b8 100 +.b8 50 +.b8 100 +.b8 101 +.b8 0 +.b8 1 +.b8 18 +.b8 1 +.b8 0 + } + .section .debug_pubnames + { +.b32 $L__pubNames_end0-$L__pubNames_start0 +$L__pubNames_start0: +.b8 2 +.b8 0 +.b32 .debug_info +.b32 180 +.b32 125 +.b8 116 +.b8 114 +.b8 105 +.b8 116 +.b8 111 +.b8 110 +.b8 95 +.b8 95 +.b8 48 +.b8 100 +.b8 49 +.b8 100 +.b8 50 +.b8 100 +.b8 101 +.b8 0 +.b32 0 +$L__pubNames_end0: + } + .section .debug_pubtypes + { +.b32 $L__pubTypes_end0-$L__pubTypes_start0 +$L__pubTypes_start0: +.b8 2 +.b8 0 +.b32 .debug_info +.b32 180 +.b32 0 +$L__pubTypes_end0: + } + .section .debug_loc { } diff --git a/.triton/dump/f5088324dcdcf6814f6743553c1321c2/triton_.ttgir b/.triton/dump/f5088324dcdcf6814f6743553c1321c2/triton_.ttgir new file mode 100644 index 0000000000000000000000000000000000000000..61e6c168704eb4f131b513f2549c621f8a6d1f8b --- /dev/null +++ b/.triton/dump/f5088324dcdcf6814f6743553c1321c2/triton_.ttgir @@ -0,0 +1,19 @@ +#blocked = #triton_gpu.blocked<{sizePerThread = [4], threadsPerWarp = [32], warpsPerCTA = [4], order = [0], CTAsPerCGA = [1], CTASplitNum = [1], CTAOrder = [0]}> +module attributes {"triton_gpu.compute-capability" = 89 : i32, "triton_gpu.num-ctas" = 1 : i32, "triton_gpu.num-warps" = 4 : i32, "triton_gpu.threads-per-warp" = 32 : i32} { + tt.func public @triton__0d1d2de(%arg0: !tt.ptr {tt.divisibility = 16 : i32}, %arg1: !tt.ptr {tt.divisibility = 16 : i32}, %arg2: i32 {tt.divisibility = 16 : i32, tt.max_divisibility = 16 : i32}) attributes {noinline = false} { + %c512_i32 = arith.constant 512 : i32 + %0 = tt.get_program_id x : i32 + %1 = arith.muli %0, %c512_i32 : i32 + %2 = tt.make_range {end = 512 : i32, start = 0 : i32} : tensor<512xi32, #blocked> + %3 = tt.splat %1 : (i32) -> tensor<512xi32, #blocked> + %4 = arith.addi %3, %2 : tensor<512xi32, #blocked> + %5 = tt.splat %arg0 : (!tt.ptr) -> tensor<512x!tt.ptr, #blocked> + %6 = tt.addptr %5, %4 : tensor<512x!tt.ptr, #blocked>, tensor<512xi32, #blocked> + %7 = tt.load %6 {cache = 1 : i32, evict = 1 : i32, isVolatile = false} : tensor<512xf32, #blocked> + %8 = tt.splat %arg1 : (!tt.ptr) -> tensor<512x!tt.ptr, #blocked> + %9 = tt.addptr %8, %4 : tensor<512x!tt.ptr, #blocked>, tensor<512xi32, #blocked> + %10 = arith.truncf %7 : tensor<512xf32, #blocked> to tensor<512xbf16, #blocked> + tt.store %9, %10 {cache = 1 : i32, evict = 1 : i32} : tensor<512xbf16, #blocked> + tt.return + } +} diff --git a/.triton/dump/f5088324dcdcf6814f6743553c1321c2/triton_.ttir b/.triton/dump/f5088324dcdcf6814f6743553c1321c2/triton_.ttir new file mode 100644 index 0000000000000000000000000000000000000000..de8871dcaba54cb7d1b997f9009d0eeab54d091f --- /dev/null +++ b/.triton/dump/f5088324dcdcf6814f6743553c1321c2/triton_.ttir @@ -0,0 +1,18 @@ +module { + tt.func public @triton__0d1d2de(%arg0: !tt.ptr {tt.divisibility = 16 : i32}, %arg1: !tt.ptr {tt.divisibility = 16 : i32}, %arg2: i32 {tt.divisibility = 16 : i32, tt.max_divisibility = 16 : i32}) attributes {noinline = false} { + %c512_i32 = arith.constant 512 : i32 + %0 = tt.get_program_id x : i32 + %1 = arith.muli %0, %c512_i32 : i32 + %2 = tt.make_range {end = 512 : i32, start = 0 : i32} : tensor<512xi32> + %3 = tt.splat %1 : (i32) -> tensor<512xi32> + %4 = arith.addi %3, %2 : tensor<512xi32> + %5 = tt.splat %arg0 : (!tt.ptr) -> tensor<512x!tt.ptr> + %6 = tt.addptr %5, %4 : tensor<512x!tt.ptr>, tensor<512xi32> + %7 = tt.load %6 {cache = 1 : i32, evict = 1 : i32, isVolatile = false} : tensor<512xf32> + %8 = tt.splat %arg1 : (!tt.ptr) -> tensor<512x!tt.ptr> + %9 = tt.addptr %8, %4 : tensor<512x!tt.ptr>, tensor<512xi32> + %10 = arith.truncf %7 : tensor<512xf32> to tensor<512xbf16> + tt.store %9, %10 {cache = 1 : i32, evict = 1 : i32} : tensor<512xbf16> + tt.return + } +} diff --git a/.triton/dump/fc9988fe599aa093558c9034385b9a0b/triton_.llir b/.triton/dump/fc9988fe599aa093558c9034385b9a0b/triton_.llir new file mode 100644 index 0000000000000000000000000000000000000000..117a2548007476a20318e27cacd0b0080d3b8f34 --- /dev/null +++ b/.triton/dump/fc9988fe599aa093558c9034385b9a0b/triton_.llir @@ -0,0 +1,111 @@ +; ModuleID = 'LLVMDialectModule' +source_filename = "LLVMDialectModule" + +define void @triton__0d1d2d3d4de(ptr addrspace(1) %0, ptr addrspace(1) %1, ptr addrspace(1) %2, ptr addrspace(1) %3, i32 %4) local_unnamed_addr !dbg !5 { + %6 = tail call i32 @llvm.nvvm.read.ptx.sreg.tid.x(), !dbg !8 + %7 = shl i32 %6, 1, !dbg !8 + %8 = and i32 %7, 510, !dbg !8 + %9 = tail call i32 asm "mov.u32 $0, %ctaid.x;", "=r"() #1, !dbg !9 + %10 = shl i32 %9, 9, !dbg !10 + %11 = or i32 %10, %8, !dbg !11 + %.frozen = freeze i32 %11 + %12 = sdiv i32 %.frozen, 256, !dbg !12 + %13 = srem i32 %12, 3, !dbg !13 + %14 = mul i32 %12, 256 + %.decomposed = sub i32 %.frozen, %14 + %15 = sdiv i32 %11, 768, !dbg !14 + %16 = shl nsw i32 %15, 8, !dbg !15 + %17 = add nsw i32 %16, %.decomposed, !dbg !16 + %18 = sext i32 %17 to i64, !dbg !17 + %19 = getelementptr i16, ptr addrspace(1) %0, i64 %18, !dbg !17 + %20 = tail call i32 asm sideeffect "mov.u32 $0, 0x0;\0A\09@$2 ld.global.L1::evict_last.b32 { $0 }, [ $1 + 0 ];", "=r,l,b"(ptr addrspace(1) %19, i1 true) #1, !dbg !18 + %21 = trunc i32 %20 to i16, !dbg !18 + %extelt.offset = lshr i32 %20, 16, !dbg !18 + %22 = trunc i32 %extelt.offset to i16, !dbg !18 + %23 = tail call float asm "cvt.f32.bf16 $0, $1;", "=r,h"(i16 %21) #1, !dbg !19 + %24 = tail call float asm "cvt.f32.bf16 $0, $1;", "=r,h"(i16 %22) #1, !dbg !19 + %25 = getelementptr i16, ptr addrspace(1) %1, i64 %18, !dbg !20 + %26 = tail call i32 asm sideeffect "mov.u32 $0, 0x0;\0A\09@$2 ld.global.L1::evict_last.b32 { $0 }, [ $1 + 0 ];", "=r,l,b"(ptr addrspace(1) %25, i1 true) #1, !dbg !21 + %27 = trunc i32 %26 to i16, !dbg !21 + %extelt.offset1 = lshr i32 %26, 16, !dbg !21 + %28 = trunc i32 %extelt.offset1 to i16, !dbg !21 + %29 = tail call float asm "cvt.f32.bf16 $0, $1;", "=r,h"(i16 %27) #1, !dbg !22 + %30 = tail call float asm "cvt.f32.bf16 $0, $1;", "=r,h"(i16 %28) #1, !dbg !22 + %31 = getelementptr i16, ptr addrspace(1) %2, i64 %18, !dbg !23 + %32 = tail call i32 asm sideeffect "mov.u32 $0, 0x0;\0A\09@$2 ld.global.L1::evict_last.b32 { $0 }, [ $1 + 0 ];", "=r,l,b"(ptr addrspace(1) %31, i1 true) #1, !dbg !24 + %33 = trunc i32 %32 to i16, !dbg !24 + %extelt.offset2 = lshr i32 %32, 16, !dbg !24 + %34 = trunc i32 %extelt.offset2 to i16, !dbg !24 + %35 = tail call float asm "cvt.f32.bf16 $0, $1;", "=r,h"(i16 %33) #1, !dbg !25 + %36 = tail call float asm "cvt.f32.bf16 $0, $1;", "=r,h"(i16 %34) #1, !dbg !25 + %37 = icmp eq i32 %13, 2, !dbg !26 + %38 = select i1 %37, float %23, float 0.000000e+00, !dbg !27 + %39 = select i1 %37, float %24, float 0.000000e+00, !dbg !27 + %40 = icmp eq i32 %13, 1, !dbg !28 + %41 = select i1 %40, float %29, float 0.000000e+00, !dbg !29 + %42 = select i1 %40, float %30, float 0.000000e+00, !dbg !29 + %43 = fadd float %38, %41, !dbg !30 + %44 = fadd float %39, %42, !dbg !30 + %45 = icmp eq i32 %13, 0, !dbg !31 + %46 = select i1 %45, float %35, float 0.000000e+00, !dbg !32 + %47 = select i1 %45, float %36, float 0.000000e+00, !dbg !32 + %48 = fadd float %43, %46, !dbg !33 + %49 = fadd float %44, %47, !dbg !33 + %50 = sext i32 %11 to i64, !dbg !34 + %51 = getelementptr i16, ptr addrspace(1) %3, i64 %50, !dbg !34 + %52 = tail call i16 asm "cvt.rn.bf16.f32 $0, $1;", "=h,r"(float %48) #1, !dbg !35 + %53 = tail call i16 asm "cvt.rn.bf16.f32 $0, $1;", "=h,r"(float %49) #1, !dbg !35 + %54 = insertelement <2 x i16> undef, i16 %52, i64 0, !dbg !35 + %55 = insertelement <2 x i16> %54, i16 %53, i64 1, !dbg !35 + %56 = bitcast <2 x i16> %55 to i32, !dbg !35 + tail call void asm sideeffect "@$2 st.global.b32 [ $1 + 0 ], { $0 };", "r,l,b"(i32 %56, ptr addrspace(1) %51, i1 true) #1, !dbg !35 + ret void, !dbg !36 +} + +; Function Attrs: mustprogress nocallback nofree nosync nounwind speculatable willreturn memory(none) +declare noundef i32 @llvm.nvvm.read.ptx.sreg.tid.x() #0 + +attributes #0 = { mustprogress nocallback nofree nosync nounwind speculatable willreturn memory(none) } +attributes #1 = { nounwind } + +!llvm.module.flags = !{!0} +!llvm.dbg.cu = !{!1} +!nvvm.annotations = !{!3, !4, !4, !3} + +!0 = !{i32 2, !"Debug Info Version", i32 3} +!1 = distinct !DICompileUnit(language: DW_LANG_C, file: !2, producer: "triton", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug) +!2 = !DIFile(filename: "c63r7iurwk5ydlswh7rvhcmlx2cfretlrewgw6tljlursshgtfpp.py", directory: "/tmp/torchinductor_root/63") +!3 = !{ptr @triton__0d1d2d3d4de, !"kernel", i32 1} +!4 = !{ptr @triton__0d1d2d3d4de, !"maxntidx", i32 256} +!5 = distinct !DISubprogram(name: "triton__0d1d2d3d4de", linkageName: "triton__0d1d2d3d4de", scope: !2, file: !2, line: 18, type: !6, scopeLine: 18, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !1) +!6 = !DISubroutineType(cc: DW_CC_normal, types: !7) +!7 = !{} +!8 = !DILocation(line: 21, column: 36, scope: !5) +!9 = !DILocation(line: 20, column: 28, scope: !5) +!10 = !DILocation(line: 20, column: 33, scope: !5) +!11 = !DILocation(line: 21, column: 23, scope: !5) +!12 = !DILocation(line: 23, column: 20, scope: !5) +!13 = !DILocation(line: 23, column: 27, scope: !5) +!14 = !DILocation(line: 25, column: 20, scope: !5) +!15 = !DILocation(line: 27, column: 40, scope: !5) +!16 = !DILocation(line: 27, column: 36, scope: !5) +!17 = !DILocation(line: 27, column: 30, scope: !5) +!18 = !DILocation(line: 27, column: 46, scope: !5) +!19 = !DILocation(line: 27, column: 85, scope: !5) +!20 = !DILocation(line: 28, column: 30, scope: !5) +!21 = !DILocation(line: 28, column: 46, scope: !5) +!22 = !DILocation(line: 28, column: 85, scope: !5) +!23 = !DILocation(line: 29, column: 31, scope: !5) +!24 = !DILocation(line: 29, column: 47, scope: !5) +!25 = !DILocation(line: 29, column: 86, scope: !5) +!26 = !DILocation(line: 32, column: 19, scope: !5) +!27 = !DILocation(line: 34, column: 32, scope: !5) +!28 = !DILocation(line: 36, column: 19, scope: !5) +!29 = !DILocation(line: 37, column: 32, scope: !5) +!30 = !DILocation(line: 38, column: 19, scope: !5) +!31 = !DILocation(line: 40, column: 20, scope: !5) +!32 = !DILocation(line: 41, column: 35, scope: !5) +!33 = !DILocation(line: 42, column: 20, scope: !5) +!34 = !DILocation(line: 43, column: 25, scope: !5) +!35 = !DILocation(line: 43, column: 37, scope: !5) +!36 = !DILocation(line: 43, column: 4, scope: !5) diff --git a/.triton/dump/fc9988fe599aa093558c9034385b9a0b/triton_.ptx b/.triton/dump/fc9988fe599aa093558c9034385b9a0b/triton_.ptx new file mode 100644 index 0000000000000000000000000000000000000000..f93dac3e024acef49f76bb830400d9b58e41b3c8 --- /dev/null +++ b/.triton/dump/fc9988fe599aa093558c9034385b9a0b/triton_.ptx @@ -0,0 +1,387 @@ +// +// Generated by LLVM NVPTX Back-End +// + +.version 8.2 +.target sm_89 +.address_size 64 + + // .globl triton__0d1d2d3d4de + +.visible .entry triton__0d1d2d3d4de( + .param .u64 triton__0d1d2d3d4de_param_0, + .param .u64 triton__0d1d2d3d4de_param_1, + .param .u64 triton__0d1d2d3d4de_param_2, + .param .u64 triton__0d1d2d3d4de_param_3, + .param .u32 triton__0d1d2d3d4de_param_4 +) +.maxntid 256, 1, 1 +{ + .reg .pred %p<8>; + .reg .b16 %rs<9>; + .reg .b32 %r<38>; + .reg .f32 %f<17>; + .reg .b64 %rd<11>; + .loc 1 18 0 +$L__func_begin0: + .loc 1 18 0 + + ld.param.u64 %rd5, [triton__0d1d2d3d4de_param_0]; + ld.param.u64 %rd6, [triton__0d1d2d3d4de_param_1]; +$L__tmp0: + .loc 1 21 36 + mov.u32 %r14, %tid.x; + shl.b32 %r15, %r14, 1; + ld.param.u64 %rd7, [triton__0d1d2d3d4de_param_2]; + and.b32 %r16, %r15, 510; + ld.param.u64 %rd8, [triton__0d1d2d3d4de_param_3]; + .loc 1 20 28 + mov.u32 %r1, %ctaid.x; + .loc 1 20 33 + shl.b32 %r17, %r1, 9; + .loc 1 21 23 + or.b32 %r18, %r17, %r16; + .loc 1 23 20 + shr.s32 %r20, %r18, 31; + shr.u32 %r21, %r20, 24; + add.s32 %r22, %r18, %r21; + shr.s32 %r23, %r22, 8; + .loc 1 23 27 + mul.hi.s32 %r24, %r23, 1431655766; + shr.u32 %r25, %r24, 31; + add.s32 %r26, %r24, %r25; + mul.lo.s32 %r27, %r26, 3; + sub.s32 %r28, %r23, %r27; + and.b32 %r29, %r22, -256; + sub.s32 %r30, %r18, %r29; + .loc 1 25 20 + mul.hi.s32 %r31, %r18, 715827883; + shr.u32 %r32, %r31, 31; + shr.u32 %r33, %r31, 7; + add.s32 %r34, %r33, %r32; + .loc 1 27 40 + shl.b32 %r35, %r34, 8; + .loc 1 27 36 + add.s32 %r36, %r35, %r30; + .loc 1 27 30 + mul.wide.s32 %rd9, %r36, 2; + add.s64 %rd1, %rd5, %rd9; + mov.pred %p1, -1; + .loc 1 27 46 + mov.u32 %r2, 0x0; + @%p1 ld.global.L1::evict_last.b32 { %r2 }, [ %rd1 + 0 ]; + cvt.u16.u32 %rs1, %r2; + { .reg .b16 tmp; mov.b32 {tmp, %rs2}, %r2; } + .loc 1 27 85 + cvt.f32.bf16 %r3, %rs1; + mov.b32 %f1, %r3; + cvt.f32.bf16 %r4, %rs2; + mov.b32 %f2, %r4; + .loc 1 28 30 + add.s64 %rd2, %rd6, %rd9; + .loc 1 28 46 + mov.u32 %r5, 0x0; + @%p1 ld.global.L1::evict_last.b32 { %r5 }, [ %rd2 + 0 ]; + cvt.u16.u32 %rs3, %r5; + { .reg .b16 tmp; mov.b32 {tmp, %rs4}, %r5; } + .loc 1 28 85 + cvt.f32.bf16 %r6, %rs3; + mov.b32 %f3, %r6; + cvt.f32.bf16 %r7, %rs4; + mov.b32 %f4, %r7; + .loc 1 29 31 + add.s64 %rd3, %rd7, %rd9; + .loc 1 29 47 + mov.u32 %r8, 0x0; + @%p1 ld.global.L1::evict_last.b32 { %r8 }, [ %rd3 + 0 ]; + cvt.u16.u32 %rs5, %r8; + { .reg .b16 tmp; mov.b32 {tmp, %rs6}, %r8; } + .loc 1 29 86 + cvt.f32.bf16 %r9, %rs5; + mov.b32 %f5, %r9; + cvt.f32.bf16 %r10, %rs6; + mov.b32 %f6, %r10; + .loc 1 32 19 + setp.eq.s32 %p5, %r28, 2; + .loc 1 34 32 + selp.f32 %f7, %f1, 0f00000000, %p5; + selp.f32 %f8, %f2, 0f00000000, %p5; + .loc 1 36 19 + setp.eq.s32 %p6, %r28, 1; + .loc 1 37 32 + selp.f32 %f9, %f3, 0f00000000, %p6; + selp.f32 %f10, %f4, 0f00000000, %p6; + .loc 1 38 19 + add.f32 %f11, %f7, %f9; + add.f32 %f12, %f8, %f10; + .loc 1 40 20 + setp.eq.s32 %p7, %r28, 0; + .loc 1 41 35 + selp.f32 %f13, %f5, 0f00000000, %p7; + selp.f32 %f14, %f6, 0f00000000, %p7; + .loc 1 42 20 + add.f32 %f15, %f11, %f13; + add.f32 %f16, %f12, %f14; + .loc 1 43 25 + mul.wide.s32 %rd10, %r18, 2; + add.s64 %rd4, %rd8, %rd10; + .loc 1 43 37 + mov.b32 %r11, %f15; + cvt.rn.bf16.f32 %rs7, %r11; + mov.b32 %r12, %f16; + cvt.rn.bf16.f32 %rs8, %r12; + mov.b32 %r37, {%rs7, %rs8}; + @%p1 st.global.b32 [ %rd4 + 0 ], { %r37 }; + .loc 1 43 4 + ret; +$L__tmp1: +$L__func_end0: + +} + .file 1 "/tmp/torchinductor_root/63/c63r7iurwk5ydlswh7rvhcmlx2cfretlrewgw6tljlursshgtfpp.py" + .section .debug_abbrev + { +.b8 1 +.b8 17 +.b8 1 +.b8 37 +.b8 8 +.b8 19 +.b8 5 +.b8 3 +.b8 8 +.b8 16 +.b8 6 +.b8 27 +.b8 8 +.b8 180 +.b8 66 +.b8 12 +.b8 17 +.b8 1 +.b8 18 +.b8 1 +.b8 0 +.b8 0 +.b8 2 +.b8 46 +.b8 0 +.b8 17 +.b8 1 +.b8 18 +.b8 1 +.b8 64 +.b8 10 +.b8 135 +.b8 64 +.b8 8 +.b8 3 +.b8 8 +.b8 58 +.b8 11 +.b8 59 +.b8 11 +.b8 63 +.b8 12 +.b8 0 +.b8 0 +.b8 0 + } + .section .debug_info + { +.b32 184 +.b8 2 +.b8 0 +.b32 .debug_abbrev +.b8 8 +.b8 1 +.b8 116 +.b8 114 +.b8 105 +.b8 116 +.b8 111 +.b8 110 +.b8 0 +.b8 2 +.b8 0 +.b8 99 +.b8 54 +.b8 51 +.b8 114 +.b8 55 +.b8 105 +.b8 117 +.b8 114 +.b8 119 +.b8 107 +.b8 53 +.b8 121 +.b8 100 +.b8 108 +.b8 115 +.b8 119 +.b8 104 +.b8 55 +.b8 114 +.b8 118 +.b8 104 +.b8 99 +.b8 109 +.b8 108 +.b8 120 +.b8 50 +.b8 99 +.b8 102 +.b8 114 +.b8 101 +.b8 116 +.b8 108 +.b8 114 +.b8 101 +.b8 119 +.b8 103 +.b8 119 +.b8 54 +.b8 116 +.b8 108 +.b8 106 +.b8 108 +.b8 117 +.b8 114 +.b8 115 +.b8 115 +.b8 104 +.b8 103 +.b8 116 +.b8 102 +.b8 112 +.b8 112 +.b8 46 +.b8 112 +.b8 121 +.b8 0 +.b32 .debug_line +.b8 47 +.b8 116 +.b8 109 +.b8 112 +.b8 47 +.b8 116 +.b8 111 +.b8 114 +.b8 99 +.b8 104 +.b8 105 +.b8 110 +.b8 100 +.b8 117 +.b8 99 +.b8 116 +.b8 111 +.b8 114 +.b8 95 +.b8 114 +.b8 111 +.b8 111 +.b8 116 +.b8 47 +.b8 54 +.b8 51 +.b8 0 +.b8 1 +.b64 $L__func_begin0 +.b64 $L__func_end0 +.b8 2 +.b64 $L__func_begin0 +.b64 $L__func_end0 +.b8 1 +.b8 156 +.b8 116 +.b8 114 +.b8 105 +.b8 116 +.b8 111 +.b8 110 +.b8 95 +.b8 95 +.b8 48 +.b8 100 +.b8 49 +.b8 100 +.b8 50 +.b8 100 +.b8 51 +.b8 100 +.b8 52 +.b8 100 +.b8 101 +.b8 0 +.b8 116 +.b8 114 +.b8 105 +.b8 116 +.b8 111 +.b8 110 +.b8 95 +.b8 95 +.b8 48 +.b8 100 +.b8 49 +.b8 100 +.b8 50 +.b8 100 +.b8 51 +.b8 100 +.b8 52 +.b8 100 +.b8 101 +.b8 0 +.b8 1 +.b8 18 +.b8 1 +.b8 0 + } + .section .debug_pubnames + { +.b32 $L__pubNames_end0-$L__pubNames_start0 +$L__pubNames_start0: +.b8 2 +.b8 0 +.b32 .debug_info +.b32 188 +.b32 125 +.b8 116 +.b8 114 +.b8 105 +.b8 116 +.b8 111 +.b8 110 +.b8 95 +.b8 95 +.b8 48 +.b8 100 +.b8 49 +.b8 100 +.b8 50 +.b8 100 +.b8 51 +.b8 100 +.b8 52 +.b8 100 +.b8 101 +.b8 0 +.b32 0 +$L__pubNames_end0: + } + .section .debug_pubtypes + { +.b32 $L__pubTypes_end0-$L__pubTypes_start0 +$L__pubTypes_start0: +.b8 2 +.b8 0 +.b32 .debug_info +.b32 188 +.b32 0 +$L__pubTypes_end0: + } + .section .debug_loc { } diff --git a/.triton/dump/fc9988fe599aa093558c9034385b9a0b/triton_.ttgir b/.triton/dump/fc9988fe599aa093558c9034385b9a0b/triton_.ttgir new file mode 100644 index 0000000000000000000000000000000000000000..418903e8c378ddfa6f0757e9a62ca3863b0458d4 --- /dev/null +++ b/.triton/dump/fc9988fe599aa093558c9034385b9a0b/triton_.ttgir @@ -0,0 +1,49 @@ +#blocked = #triton_gpu.blocked<{sizePerThread = [2], threadsPerWarp = [32], warpsPerCTA = [8], order = [0], CTAsPerCGA = [1], CTASplitNum = [1], CTAOrder = [0]}> +module attributes {"triton_gpu.compute-capability" = 89 : i32, "triton_gpu.num-ctas" = 1 : i32, "triton_gpu.num-warps" = 8 : i32, "triton_gpu.threads-per-warp" = 32 : i32} { + tt.func public @triton__0d1d2d3d4de(%arg0: !tt.ptr {tt.divisibility = 16 : i32}, %arg1: !tt.ptr {tt.divisibility = 16 : i32}, %arg2: !tt.ptr {tt.divisibility = 16 : i32}, %arg3: !tt.ptr {tt.divisibility = 16 : i32}, %arg4: i32 {tt.divisibility = 16 : i32, tt.max_divisibility = 16 : i32}) attributes {noinline = false} { + %cst = arith.constant dense<256> : tensor<512xi32, #blocked> + %cst_0 = arith.constant dense<3> : tensor<512xi32, #blocked> + %cst_1 = arith.constant dense<768> : tensor<512xi32, #blocked> + %cst_2 = arith.constant dense<2> : tensor<512xi32, #blocked> + %cst_3 = arith.constant dense<0> : tensor<512xi32, #blocked> + %cst_4 = arith.constant dense<1> : tensor<512xi32, #blocked> + %cst_5 = arith.constant dense<0.000000e+00> : tensor<512xf32, #blocked> + %c512_i32 = arith.constant 512 : i32 + %0 = tt.get_program_id x : i32 + %1 = arith.muli %0, %c512_i32 : i32 + %2 = tt.make_range {end = 512 : i32, start = 0 : i32} : tensor<512xi32, #blocked> + %3 = tt.splat %1 : (i32) -> tensor<512xi32, #blocked> + %4 = arith.addi %3, %2 : tensor<512xi32, #blocked> + %5 = arith.divsi %4, %cst : tensor<512xi32, #blocked> + %6 = arith.remsi %5, %cst_0 : tensor<512xi32, #blocked> + %7 = arith.remsi %4, %cst : tensor<512xi32, #blocked> + %8 = arith.divsi %4, %cst_1 : tensor<512xi32, #blocked> + %9 = arith.muli %8, %cst : tensor<512xi32, #blocked> + %10 = arith.addi %7, %9 : tensor<512xi32, #blocked> + %11 = tt.splat %arg0 : (!tt.ptr) -> tensor<512x!tt.ptr, #blocked> + %12 = tt.addptr %11, %10 : tensor<512x!tt.ptr, #blocked>, tensor<512xi32, #blocked> + %13 = tt.load %12 {cache = 1 : i32, evict = 3 : i32, isVolatile = false} : tensor<512xbf16, #blocked> + %14 = arith.extf %13 : tensor<512xbf16, #blocked> to tensor<512xf32, #blocked> + %15 = tt.splat %arg1 : (!tt.ptr) -> tensor<512x!tt.ptr, #blocked> + %16 = tt.addptr %15, %10 : tensor<512x!tt.ptr, #blocked>, tensor<512xi32, #blocked> + %17 = tt.load %16 {cache = 1 : i32, evict = 3 : i32, isVolatile = false} : tensor<512xbf16, #blocked> + %18 = arith.extf %17 : tensor<512xbf16, #blocked> to tensor<512xf32, #blocked> + %19 = tt.splat %arg2 : (!tt.ptr) -> tensor<512x!tt.ptr, #blocked> + %20 = tt.addptr %19, %10 : tensor<512x!tt.ptr, #blocked>, tensor<512xi32, #blocked> + %21 = tt.load %20 {cache = 1 : i32, evict = 3 : i32, isVolatile = false} : tensor<512xbf16, #blocked> + %22 = arith.extf %21 : tensor<512xbf16, #blocked> to tensor<512xf32, #blocked> + %23 = arith.cmpi eq, %6, %cst_2 : tensor<512xi32, #blocked> + %24 = arith.select %23, %14, %cst_5 : tensor<512xi1, #blocked>, tensor<512xf32, #blocked> + %25 = arith.cmpi eq, %6, %cst_4 : tensor<512xi32, #blocked> + %26 = arith.select %25, %18, %cst_5 : tensor<512xi1, #blocked>, tensor<512xf32, #blocked> + %27 = arith.addf %24, %26 : tensor<512xf32, #blocked> + %28 = arith.cmpi eq, %6, %cst_3 : tensor<512xi32, #blocked> + %29 = arith.select %28, %22, %cst_5 : tensor<512xi1, #blocked>, tensor<512xf32, #blocked> + %30 = arith.addf %27, %29 : tensor<512xf32, #blocked> + %31 = tt.splat %arg3 : (!tt.ptr) -> tensor<512x!tt.ptr, #blocked> + %32 = tt.addptr %31, %4 : tensor<512x!tt.ptr, #blocked>, tensor<512xi32, #blocked> + %33 = arith.truncf %30 : tensor<512xf32, #blocked> to tensor<512xbf16, #blocked> + tt.store %32, %33 {cache = 1 : i32, evict = 1 : i32} : tensor<512xbf16, #blocked> + tt.return + } +} diff --git a/.triton/dump/fc9988fe599aa093558c9034385b9a0b/triton_.ttir b/.triton/dump/fc9988fe599aa093558c9034385b9a0b/triton_.ttir new file mode 100644 index 0000000000000000000000000000000000000000..b71eedeae3981e272e19b3c61c07d24ffd576f9c --- /dev/null +++ b/.triton/dump/fc9988fe599aa093558c9034385b9a0b/triton_.ttir @@ -0,0 +1,48 @@ +module { + tt.func public @triton__0d1d2d3d4de(%arg0: !tt.ptr {tt.divisibility = 16 : i32}, %arg1: !tt.ptr {tt.divisibility = 16 : i32}, %arg2: !tt.ptr {tt.divisibility = 16 : i32}, %arg3: !tt.ptr {tt.divisibility = 16 : i32}, %arg4: i32 {tt.divisibility = 16 : i32, tt.max_divisibility = 16 : i32}) attributes {noinline = false} { + %cst = arith.constant dense<0> : tensor<512xi32> + %cst_0 = arith.constant dense<1> : tensor<512xi32> + %cst_1 = arith.constant dense<0.000000e+00> : tensor<512xf32> + %cst_2 = arith.constant dense<2> : tensor<512xi32> + %cst_3 = arith.constant dense<768> : tensor<512xi32> + %cst_4 = arith.constant dense<3> : tensor<512xi32> + %cst_5 = arith.constant dense<256> : tensor<512xi32> + %c512_i32 = arith.constant 512 : i32 + %0 = tt.get_program_id x : i32 + %1 = arith.muli %0, %c512_i32 : i32 + %2 = tt.make_range {end = 512 : i32, start = 0 : i32} : tensor<512xi32> + %3 = tt.splat %1 : (i32) -> tensor<512xi32> + %4 = arith.addi %3, %2 : tensor<512xi32> + %5 = arith.divsi %4, %cst_5 : tensor<512xi32> + %6 = arith.remsi %5, %cst_4 : tensor<512xi32> + %7 = arith.remsi %4, %cst_5 : tensor<512xi32> + %8 = arith.divsi %4, %cst_3 : tensor<512xi32> + %9 = arith.muli %8, %cst_5 : tensor<512xi32> + %10 = arith.addi %7, %9 : tensor<512xi32> + %11 = tt.splat %arg0 : (!tt.ptr) -> tensor<512x!tt.ptr> + %12 = tt.addptr %11, %10 : tensor<512x!tt.ptr>, tensor<512xi32> + %13 = tt.load %12 {cache = 1 : i32, evict = 3 : i32, isVolatile = false} : tensor<512xbf16> + %14 = arith.extf %13 : tensor<512xbf16> to tensor<512xf32> + %15 = tt.splat %arg1 : (!tt.ptr) -> tensor<512x!tt.ptr> + %16 = tt.addptr %15, %10 : tensor<512x!tt.ptr>, tensor<512xi32> + %17 = tt.load %16 {cache = 1 : i32, evict = 3 : i32, isVolatile = false} : tensor<512xbf16> + %18 = arith.extf %17 : tensor<512xbf16> to tensor<512xf32> + %19 = tt.splat %arg2 : (!tt.ptr) -> tensor<512x!tt.ptr> + %20 = tt.addptr %19, %10 : tensor<512x!tt.ptr>, tensor<512xi32> + %21 = tt.load %20 {cache = 1 : i32, evict = 3 : i32, isVolatile = false} : tensor<512xbf16> + %22 = arith.extf %21 : tensor<512xbf16> to tensor<512xf32> + %23 = arith.cmpi eq, %6, %cst_2 : tensor<512xi32> + %24 = arith.select %23, %14, %cst_1 : tensor<512xi1>, tensor<512xf32> + %25 = arith.cmpi eq, %6, %cst_0 : tensor<512xi32> + %26 = arith.select %25, %18, %cst_1 : tensor<512xi1>, tensor<512xf32> + %27 = arith.addf %24, %26 : tensor<512xf32> + %28 = arith.cmpi eq, %6, %cst : tensor<512xi32> + %29 = arith.select %28, %22, %cst_1 : tensor<512xi1>, tensor<512xf32> + %30 = arith.addf %27, %29 : tensor<512xf32> + %31 = tt.splat %arg3 : (!tt.ptr) -> tensor<512x!tt.ptr> + %32 = tt.addptr %31, %4 : tensor<512x!tt.ptr>, tensor<512xi32> + %33 = arith.truncf %30 : tensor<512xf32> to tensor<512xbf16> + tt.store %32, %33 {cache = 1 : i32, evict = 1 : i32} : tensor<512xbf16> + tt.return + } +} diff --git a/wandb/run-20240926_055222-14kj2390/files/requirements.txt b/wandb/run-20240926_055222-14kj2390/files/requirements.txt new file mode 100644 index 0000000000000000000000000000000000000000..3cd45e0832b399f278ffb005f62b438d1ccf128c --- /dev/null +++ b/wandb/run-20240926_055222-14kj2390/files/requirements.txt @@ -0,0 +1,192 @@ +pytz==2024.2 +xxhash==3.5.0 +tzdata==2024.2 +tqdm==4.66.5 +smmap==5.0.1 +setproctitle==1.3.3 +sentry-sdk==2.14.0 +scipy==1.14.1 +requests==2.32.3 +regex==2024.9.11 +pyarrow==17.0.0 +protobuf==5.28.2 +multidict==6.1.0 +frozenlist==1.4.1 +einops==0.8.0 +docker-pycreds==0.4.0 +dill==0.3.8 +click==8.1.7 +async-timeout==4.0.3 +aiohappyeyeballs==2.4.0 +yarl==1.12.1 +tiktoken==0.7.0 +pandas==2.2.3 +multiprocess==0.70.16 +huggingface-hub==0.25.1 +gitdb==4.0.11 +aiosignal==1.3.1 +GitPython==3.1.43 +aiohttp==3.10.6 +wandb==0.18.1 +flash-attn==2.6.3 +datasets==3.0.0 +pluggy==1.5.0 +iniconfig==2.0.0 +pytest==8.3.3 +nbzip==0.1.0 +jupyter-console==6.6.3 +bash_kernel==0.9.3 +jupyter-http-over-ws==0.0.8 +jupyter==1.1.1 +entrypoints==0.4 +jupyter_client==7.4.9 +nbclassic==1.0.0 +notebook==6.5.5 +pyzmq==24.0.1 +Babel==2.14.0 +PyYAML==6.0.1 +Send2Trash==1.8.2 +anyio==4.2.0 +argon2-cffi==23.1.0 +argon2-cffi-bindings==21.2.0 +arrow==1.3.0 +asttokens==2.4.1 +async-lru==2.0.4 +attrs==23.2.0 +beautifulsoup4==4.12.3 +bleach==6.1.0 +cffi==1.16.0 +comm==0.2.1 +debugpy==1.8.0 +decorator==5.1.1 +defusedxml==0.7.1 +exceptiongroup==1.2.0 +executing==2.0.1 +fastjsonschema==2.19.1 +fqdn==1.5.1 +h11==0.14.0 +httpcore==1.0.2 +httpx==0.26.0 +ipykernel==6.29.0 +ipython==8.21.0 +ipython-genutils==0.2.0 +ipywidgets==8.1.1 +isoduration==20.11.0 +jedi==0.19.1 +json5==0.9.14 +jsonpointer==2.4 +jsonschema==4.21.1 +jsonschema-specifications==2023.12.1 +jupyter-archive==3.4.0 +jupyter_contrib_core==0.4.2 +jupyter_contrib_nbextensions==0.7.0 +jupyter_core==5.7.1 +jupyter-events==0.9.0 +jupyter-highlight-selected-word==0.2.0 +jupyter-lsp==2.2.2 +jupyter-nbextensions-configurator==0.6.3 +jupyter_server==2.12.5 +jupyter_server_terminals==0.5.2 +jupyterlab==4.1.0 +jupyterlab_pygments==0.3.0 +jupyterlab_server==2.25.2 +jupyterlab-widgets==3.0.9 +lxml==5.1.0 +matplotlib-inline==0.1.6 +mistune==3.0.2 +nbclient==0.9.0 +nbconvert==7.14.2 +nbformat==5.9.2 +nest-asyncio==1.6.0 +notebook_shim==0.2.3 +overrides==7.7.0 +packaging==23.2 +pandocfilters==1.5.1 +parso==0.8.3 +pexpect==4.9.0 +platformdirs==4.2.0 +prometheus-client==0.19.0 +prompt-toolkit==3.0.43 +psutil==5.9.8 +ptyprocess==0.7.0 +pure-eval==0.2.2 +pycparser==2.21 +Pygments==2.17.2 +python-dateutil==2.8.2 +python-json-logger==2.0.7 +referencing==0.33.0 +rfc3339-validator==0.1.4 +rfc3986-validator==0.1.1 +rpds-py==0.17.1 +sniffio==1.3.0 +soupsieve==2.5 +stack-data==0.6.3 +terminado==0.18.0 +tinycss2==1.2.1 +tomli==2.0.1 +tornado==6.4 +traitlets==5.14.1 +types-python-dateutil==2.8.19.20240106 +uri-template==1.3.0 +wcwidth==0.2.13 +webcolors==1.13 +webencodings==0.5.1 +websocket-client==1.7.0 +widgetsnbextension==4.0.9 +Jinja2==3.1.3 +MarkupSafe==2.1.5 +certifi==2024.2.2 +charset-normalizer==3.3.2 +filelock==3.13.1 +fsspec==2024.2.0 +idna==3.6 +mpmath==1.3.0 +networkx==3.2.1 +numpy==1.26.3 +nvidia-cublas-cu12==12.1.3.1 +nvidia-cuda-cupti-cu12==12.1.105 +nvidia-cuda-nvrtc-cu12==12.1.105 +nvidia-cuda-runtime-cu12==12.1.105 +nvidia-cudnn-cu12==8.9.2.26 +nvidia-cufft-cu12==11.0.2.54 +nvidia-curand-cu12==10.3.2.106 +nvidia-cusolver-cu12==11.4.5.107 +nvidia-cusparse-cu12==12.1.0.106 +nvidia-nccl-cu12==2.19.3 +nvidia-nvjitlink-cu12==12.3.101 +nvidia-nvtx-cu12==12.1.105 +pillow==10.2.0 +sympy==1.12 +torch==2.2.0 +torchaudio==2.2.0 +torchvision==0.17.0 +triton==2.2.0 +typing_extensions==4.9.0 +urllib3==2.2.0 +pip==24.0 +setuptools==69.0.3 +wheel==0.42.0 +PyGObject==3.42.1 +PyJWT==2.3.0 +SecretStorage==3.3.1 +blinker==1.4 +cryptography==3.4.8 +dbus-python==1.2.18 +distro==1.7.0 +httplib2==0.20.2 +importlib-metadata==4.6.4 +jeepney==0.7.1 +keyring==23.5.0 +launchpadlib==1.10.16 +lazr.restfulclient==0.14.4 +lazr.uri==1.0.6 +more-itertools==8.10.0 +oauthlib==3.2.0 +pyparsing==2.4.7 +python-apt==2.4.0+ubuntu2 +six==1.16.0 +wadllib==1.3.6 +zipp==1.0.0 +setuptools==59.6.0 +wheel==0.37.1 +pip==22.0.2 diff --git a/wandb/run-20240926_055222-14kj2390/files/wandb-summary.json b/wandb/run-20240926_055222-14kj2390/files/wandb-summary.json new file mode 100644 index 0000000000000000000000000000000000000000..e4eda1c4020982a81e74fb6d79d45af4afbccd28 --- /dev/null +++ b/wandb/run-20240926_055222-14kj2390/files/wandb-summary.json @@ -0,0 +1 @@ +{"_step":10000,"lambada/train_loss":4.44091796875,"lambada/val_loss":4.437978744506836,"mfu":8.643301142000496,"train/loss":3.9118537306785583,"_runtime":24433.960830301,"iter":10000,"wikitext-103-v1/val_loss":4.961822032928467,"ptb/val_loss":4.992388725280762,"val/loss":3.905811071395874,"_timestamp":1.7273543769095132e+09,"time_per_iter_ms":34624.825954437256,"_wandb":{"runtime":24433},"wikitext-103-v1/train_loss":4.977817058563232,"lr":6e-05,"ptb/train_loss":4.892135143280029} \ No newline at end of file diff --git a/wandb/run-20240926_055222-14kj2390/logs/debug.log b/wandb/run-20240926_055222-14kj2390/logs/debug.log new file mode 100644 index 0000000000000000000000000000000000000000..b59b23e202a8a30bbb2d405394308ccdfd3fd412 --- /dev/null +++ b/wandb/run-20240926_055222-14kj2390/logs/debug.log @@ -0,0 +1,32 @@ +2024-09-26 05:52:22,946 INFO MainThread:986 [wandb_setup.py:_flush():77] Current SDK version is 0.18.1 +2024-09-26 05:52:22,946 INFO MainThread:986 [wandb_setup.py:_flush():77] Configure stats pid to 986 +2024-09-26 05:52:22,946 INFO MainThread:986 [wandb_setup.py:_flush():77] Loading settings from /root/.config/wandb/settings +2024-09-26 05:52:22,946 INFO MainThread:986 [wandb_setup.py:_flush():77] Loading settings from /root/wandb/settings +2024-09-26 05:52:22,946 INFO MainThread:986 [wandb_setup.py:_flush():77] Loading settings from environment variables: {} +2024-09-26 05:52:22,946 INFO MainThread:986 [wandb_setup.py:_flush():77] Applying setup settings: {'mode': None, '_disable_service': None} +2024-09-26 05:52:22,946 INFO MainThread:986 [wandb_setup.py:_flush():77] Inferring run settings from compute environment: {'program_relpath': 'train.py', 'program_abspath': '/root/train.py', 'program': '/root/train.py'} +2024-09-26 05:52:22,946 INFO MainThread:986 [wandb_setup.py:_flush():77] Applying login settings: {} +2024-09-26 05:52:22,946 INFO MainThread:986 [wandb_init.py:_log_setup():532] Logging user logs to /root/wandb/run-20240926_055222-14kj2390/logs/debug.log +2024-09-26 05:52:22,946 INFO MainThread:986 [wandb_init.py:_log_setup():533] Logging internal logs to /root/wandb/run-20240926_055222-14kj2390/logs/debug-internal.log +2024-09-26 05:52:22,946 INFO MainThread:986 [wandb_init.py:init():616] calling init triggers +2024-09-26 05:52:22,946 INFO MainThread:986 [wandb_init.py:init():623] wandb.init called with sweep_config: {} +config: {'out_dir': 'out', 'eval_interval': 100, 'log_interval': 1, 'eval_iters': 100, 'eval_only': False, 'always_save_checkpoint': True, 'init_from': 'scratch', 'checkpoint_path': '', 'wandb_log': True, 'wandb_project': 'gpt2_positional_encodings_100B', 'wandb_run_name': 'experiment', 'dataset': 'fineweb', 'gradient_accumulation_steps': 40, 'batch_size': 120, 'block_size': 512, 'n_layer': 4, 'n_head': 4, 'n_embd': 256, 'dropout': 0.0, 'bias': False, 'learning_rate': 0.0006, 'max_iters': 10000, 'weight_decay': 0.1, 'beta1': 0.9, 'beta2': 0.95, 'grad_clip': 1.0, 'decay_lr': True, 'warmup_iters': 100, 'lr_decay_iters': 10000, 'min_lr': 6e-05, 'backend': 'nccl', 'device': 'cuda', 'dtype': 'bfloat16', 'compile': True, 'embedding_types': ['learned', 'sinusoidal', 'polynomial_legendre', 'polynomial_chebyshev', 'random_fourier', 'wavelet'], 'attention_types': ['default'], 'collect_attention_patterns': False, 'collect_activations': False, 'eval_datasets': ['wikitext-103-v1', 'ptb', 'lambada'], 'seed': 1337} +2024-09-26 05:52:22,946 INFO MainThread:986 [wandb_init.py:init():666] starting backend +2024-09-26 05:52:22,946 INFO MainThread:986 [wandb_init.py:init():670] setting up manager +2024-09-26 05:52:22,949 INFO MainThread:986 [backend.py:_multiprocessing_setup():105] multiprocessing start_methods=fork,spawn,forkserver, using: spawn +2024-09-26 05:52:22,950 INFO MainThread:986 [wandb_init.py:init():678] backend started and connected +2024-09-26 05:52:22,954 INFO MainThread:986 [wandb_init.py:init():773] updated telemetry +2024-09-26 05:52:22,955 INFO MainThread:986 [wandb_init.py:init():806] communicating run to backend with 90.0 second timeout +2024-09-26 05:52:23,551 INFO MainThread:986 [wandb_init.py:init():857] starting run threads in backend +2024-09-26 05:52:23,729 INFO MainThread:986 [wandb_run.py:_console_start():2459] atexit reg +2024-09-26 05:52:23,729 INFO MainThread:986 [wandb_run.py:_redirect():2307] redirect: wrap_raw +2024-09-26 05:52:23,730 INFO MainThread:986 [wandb_run.py:_redirect():2372] Wrapping output streams. +2024-09-26 05:52:23,730 INFO MainThread:986 [wandb_run.py:_redirect():2397] Redirects installed. +2024-09-26 05:52:23,732 INFO MainThread:986 [wandb_init.py:init():900] run started, returning control to user process +2024-09-26 12:39:36,910 INFO MainThread:986 [wandb_run.py:_finish():2158] finishing run tulasiram/gpt2_positional_encodings_100B/14kj2390 +2024-09-26 12:39:36,910 INFO MainThread:986 [wandb_run.py:_atexit_cleanup():2422] got exitcode: 0 +2024-09-26 12:39:36,910 INFO MainThread:986 [wandb_run.py:_restore():2404] restore +2024-09-26 12:39:36,911 INFO MainThread:986 [wandb_run.py:_restore():2410] restore done +2024-09-26 12:39:40,229 INFO MainThread:986 [wandb_run.py:_footer_history_summary_info():4037] rendering history +2024-09-26 12:39:40,231 INFO MainThread:986 [wandb_run.py:_footer_history_summary_info():4069] rendering summary +2024-09-26 12:39:40,243 INFO MainThread:986 [wandb_run.py:_footer_sync_info():3996] logging synced files diff --git a/wandb/run-20240926_124123-zc6s8e8w/files/config.yaml b/wandb/run-20240926_124123-zc6s8e8w/files/config.yaml new file mode 100644 index 0000000000000000000000000000000000000000..1284376060fdd465329b8ef3c46308b2418435a2 --- /dev/null +++ b/wandb/run-20240926_124123-zc6s8e8w/files/config.yaml @@ -0,0 +1,114 @@ +_wandb: + value: + cli_version: 0.18.1 + m: [] + python_version: 3.10.12 + t: + "1": + - 1 + - 55 + "2": + - 1 + - 55 + "3": + - 2 + - 13 + - 16 + - 23 + - 55 + - 61 + "4": 3.10.12 + "5": 0.18.1 + "8": + - 5 + "12": 0.18.1 + "13": linux-x86_64 +always_save_checkpoint: + value: true +attention_types: + value: + - default +backend: + value: nccl +batch_size: + value: 120 +beta1: + value: 0.9 +beta2: + value: 0.95 +bias: + value: false +block_size: + value: 512 +checkpoint_path: + value: "" +collect_activations: + value: false +collect_attention_patterns: + value: false +compile: + value: true +dataset: + value: fineweb +decay_lr: + value: true +device: + value: cuda +dropout: + value: 0 +dtype: + value: bfloat16 +embedding_types: + value: + - sinusoidal + - polynomial_legendre + - polynomial_chebyshev + - random_fourier + - wavelet +eval_datasets: + value: + - wikitext-103-v1 + - ptb + - lambada +eval_interval: + value: 100 +eval_iters: + value: 100 +eval_only: + value: false +grad_clip: + value: 1 +gradient_accumulation_steps: + value: 40 +init_from: + value: scratch +learning_rate: + value: 0.0006 +log_interval: + value: 1 +lr_decay_iters: + value: 10000 +max_iters: + value: 10000 +min_lr: + value: 6e-05 +n_embd: + value: 256 +n_head: + value: 4 +n_layer: + value: 4 +out_dir: + value: out +seed: + value: 1337 +wandb_log: + value: true +wandb_project: + value: gpt2_positional_encodings_100B +wandb_run_name: + value: experiment +warmup_iters: + value: 100 +weight_decay: + value: 0.1 diff --git a/wandb/run-20240926_124123-zc6s8e8w/files/output.log b/wandb/run-20240926_124123-zc6s8e8w/files/output.log new file mode 100644 index 0000000000000000000000000000000000000000..82d485458f57f22e39ba83430b4b088887662f08 --- /dev/null +++ b/wandb/run-20240926_124123-zc6s8e8w/files/output.log @@ -0,0 +1,701 @@ +Training sinusoidal + default: 5%|▋ | 500/10000 [19:57<5:33:43, 2.11s/it, loss=6.7586, lr=5.98e-04, mfu=9.56%, time_per_iter_ms=2108.50ms] + +Step 100: +Train loss: 7.6601, Val loss: 7.6528 +wikitext-103-v1 - Train loss: 8.4809, Val loss: 8.4906 +ptb - Train loss: 8.1697, Val loss: 8.1714 +lambada - Train loss: 7.4525, Val loss: 7.4509 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 200: +Train loss: 7.4344, Val loss: 7.4267 +wikitext-103-v1 - Train loss: 8.3706, Val loss: 8.3747 +ptb - Train loss: 8.0520, Val loss: 8.0561 +lambada - Train loss: 7.2739, Val loss: 7.2683 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 300: +Train loss: 7.0029, Val loss: 7.0016 +wikitext-103-v1 - Train loss: 8.2234, Val loss: 8.2367 +ptb - Train loss: 8.3400, Val loss: 8.3683 +lambada - Train loss: 6.8565, Val loss: 6.8557 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 400: +Train loss: 6.8371, Val loss: 6.8338 +wikitext-103-v1 - Train loss: 8.0880, Val loss: 8.0913 +ptb - Train loss: 8.1440, Val loss: 8.1644 +lambada - Train loss: 6.6754, Val loss: 6.6756 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 500: +Train loss: 6.7388, Val loss: 6.7414 +wikitext-103-v1 - Train loss: 7.9942, Val loss: 8.0033 +ptb - Train loss: 8.0313, Val loss: 8.0488 +lambada - Train loss: 6.5577, Val loss: 6.5595 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 600: +Train loss: 6.6412, Val loss: 6.6407 +wikitext-103-v1 - Train loss: 7.9322, Val loss: 7.9388 +ptb - Train loss: 8.0853, Val loss: 8.1043 +lambada - Train loss: 6.4742, Val loss: 6.4709 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 700: +Train loss: 6.6255, Val loss: 6.6223 +wikitext-103-v1 - Train loss: 7.9249, Val loss: 7.9236 +ptb - Train loss: 8.0529, Val loss: 8.0726 +lambada - Train loss: 6.4281, Val loss: 6.4214 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 800: +Train loss: 6.5283, Val loss: 6.5269 +wikitext-103-v1 - Train loss: 7.8643, Val loss: 7.8541 +ptb - Train loss: 8.0189, Val loss: 8.0388 +lambada - Train loss: 6.3028, Val loss: 6.3063 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 900: +Train loss: 6.4675, Val loss: 6.4635 +wikitext-103-v1 - Train loss: 7.7895, Val loss: 7.7938 +ptb - Train loss: 8.0623, Val loss: 8.0847 +lambada - Train loss: 6.2291, Val loss: 6.2392 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 1000: +Train loss: 6.3241, Val loss: 6.3242 +wikitext-103-v1 - Train loss: 7.7297, Val loss: 7.7252 +ptb - Train loss: 8.0692, Val loss: 8.0977 +lambada - Train loss: 6.0658, Val loss: 6.0697 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 1100: +Train loss: 6.2671, Val loss: 6.2615 +wikitext-103-v1 - Train loss: 7.6759, Val loss: 7.6625 +ptb - Train loss: 8.0132, Val loss: 8.0436 +lambada - Train loss: 6.0368, Val loss: 6.0371 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 1200: +Train loss: 6.1377, Val loss: 6.1338 +wikitext-103-v1 - Train loss: 7.6282, Val loss: 7.6410 +ptb - Train loss: 8.0532, Val loss: 8.0869 +lambada - Train loss: 5.9035, Val loss: 5.9052 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 1300: +Train loss: 6.0643, Val loss: 6.0760 +wikitext-103-v1 - Train loss: 7.5652, Val loss: 7.5666 +ptb - Train loss: 7.9557, Val loss: 7.9865 +lambada - Train loss: 5.8646, Val loss: 5.8620 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 1400: +Train loss: 5.9816, Val loss: 5.9784 +wikitext-103-v1 - Train loss: 7.5038, Val loss: 7.5171 +ptb - Train loss: 7.9146, Val loss: 7.9524 +lambada - Train loss: 5.8292, Val loss: 5.8285 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 1500: +Train loss: 5.9489, Val loss: 5.9497 +wikitext-103-v1 - Train loss: 7.5689, Val loss: 7.5847 +ptb - Train loss: 8.0246, Val loss: 8.0613 +lambada - Train loss: 5.7830, Val loss: 5.7869 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 1600: +Train loss: 5.8188, Val loss: 5.8177 +wikitext-103-v1 - Train loss: 7.4352, Val loss: 7.4536 +ptb - Train loss: 7.9076, Val loss: 7.9324 +lambada - Train loss: 5.7077, Val loss: 5.7085 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 1700: +Train loss: 5.7963, Val loss: 5.7863 +wikitext-103-v1 - Train loss: 7.4263, Val loss: 7.4350 +ptb - Train loss: 7.8554, Val loss: 7.8895 +lambada - Train loss: 5.6650, Val loss: 5.6714 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 1800: +Train loss: 5.6973, Val loss: 5.6983 +wikitext-103-v1 - Train loss: 7.3796, Val loss: 7.3819 +ptb - Train loss: 7.8100, Val loss: 7.8480 +lambada - Train loss: 5.6049, Val loss: 5.6098 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 1900: +Train loss: 5.6383, Val loss: 5.6434 +wikitext-103-v1 - Train loss: 7.3004, Val loss: 7.3225 +ptb - Train loss: 7.8110, Val loss: 7.8405 +lambada - Train loss: 5.5360, Val loss: 5.5445 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 2000: +Train loss: 5.5807, Val loss: 5.5763 +wikitext-103-v1 - Train loss: 7.2503, Val loss: 7.2643 +ptb - Train loss: 7.7917, Val loss: 7.8264 +lambada - Train loss: 5.5063, Val loss: 5.5102 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 2100: +Train loss: 5.5351, Val loss: 5.5367 +wikitext-103-v1 - Train loss: 7.2396, Val loss: 7.2545 +ptb - Train loss: 7.8383, Val loss: 7.8720 +lambada - Train loss: 5.4508, Val loss: 5.4628 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 2200: +Train loss: 5.4788, Val loss: 5.4794 +wikitext-103-v1 - Train loss: 7.1093, Val loss: 7.1122 +ptb - Train loss: 7.6370, Val loss: 7.6717 +lambada - Train loss: 5.4330, Val loss: 5.4495 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 2300: +Train loss: 5.4032, Val loss: 5.4066 +wikitext-103-v1 - Train loss: 7.0553, Val loss: 7.0583 +ptb - Train loss: 7.5089, Val loss: 7.5477 +lambada - Train loss: 5.3691, Val loss: 5.3786 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 2400: +Train loss: 5.3345, Val loss: 5.3336 +wikitext-103-v1 - Train loss: 6.9480, Val loss: 6.9559 +ptb - Train loss: 7.4638, Val loss: 7.4952 +lambada - Train loss: 5.3338, Val loss: 5.3513 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 2500: +Train loss: 5.2553, Val loss: 5.2589 +wikitext-103-v1 - Train loss: 6.8828, Val loss: 6.8802 +ptb - Train loss: 7.3710, Val loss: 7.4102 +lambada - Train loss: 5.2598, Val loss: 5.2692 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 2600: +Train loss: 5.1867, Val loss: 5.1853 +wikitext-103-v1 - Train loss: 6.8231, Val loss: 6.8212 +ptb - Train loss: 7.2563, Val loss: 7.2946 +lambada - Train loss: 5.2057, Val loss: 5.2134 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 2700: +Train loss: 5.1483, Val loss: 5.1409 +wikitext-103-v1 - Train loss: 6.7646, Val loss: 6.7675 +ptb - Train loss: 7.1722, Val loss: 7.2145 +lambada - Train loss: 5.1709, Val loss: 5.1835 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 2800: +Train loss: 5.0955, Val loss: 5.1005 +wikitext-103-v1 - Train loss: 6.7091, Val loss: 6.7126 +ptb - Train loss: 7.1073, Val loss: 7.1540 +lambada - Train loss: 5.1589, Val loss: 5.1698 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 2900: +Train loss: 5.0328, Val loss: 5.0282 +wikitext-103-v1 - Train loss: 6.6397, Val loss: 6.6339 +ptb - Train loss: 7.0800, Val loss: 7.1261 +lambada - Train loss: 5.1167, Val loss: 5.1239 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 3000: +Train loss: 4.9883, Val loss: 4.9788 +wikitext-103-v1 - Train loss: 6.5971, Val loss: 6.5896 +ptb - Train loss: 7.0069, Val loss: 7.0636 +lambada - Train loss: 5.0714, Val loss: 5.0825 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 3100: +Train loss: 4.9237, Val loss: 4.9247 +wikitext-103-v1 - Train loss: 6.5550, Val loss: 6.5507 +ptb - Train loss: 6.9525, Val loss: 7.0099 +lambada - Train loss: 5.0304, Val loss: 5.0421 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 3200: +Train loss: 4.8880, Val loss: 4.8874 +wikitext-103-v1 - Train loss: 6.5021, Val loss: 6.5007 +ptb - Train loss: 6.9445, Val loss: 6.9930 +lambada - Train loss: 5.0273, Val loss: 5.0386 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 3300: +Train loss: 4.8342, Val loss: 4.8307 +wikitext-103-v1 - Train loss: 6.4324, Val loss: 6.4284 +ptb - Train loss: 6.8362, Val loss: 6.8901 +lambada - Train loss: 4.9704, Val loss: 4.9802 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 3400: +Train loss: 4.7895, Val loss: 4.7942 +wikitext-103-v1 - Train loss: 6.4196, Val loss: 6.4046 +ptb - Train loss: 6.8233, Val loss: 6.8774 +lambada - Train loss: 4.9664, Val loss: 4.9752 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 3500: +Train loss: 4.7510, Val loss: 4.7467 +wikitext-103-v1 - Train loss: 6.3571, Val loss: 6.3500 +ptb - Train loss: 6.7122, Val loss: 6.7660 +lambada - Train loss: 4.9291, Val loss: 4.9402 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 3600: +Train loss: 4.7111, Val loss: 4.7092 +wikitext-103-v1 - Train loss: 6.3120, Val loss: 6.3031 +ptb - Train loss: 6.5595, Val loss: 6.6195 +lambada - Train loss: 4.9033, Val loss: 4.9124 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 3700: +Train loss: 4.6687, Val loss: 4.6630 +wikitext-103-v1 - Train loss: 6.1875, Val loss: 6.1782 +ptb - Train loss: 6.2937, Val loss: 6.3537 +lambada - Train loss: 4.8903, Val loss: 4.9012 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 3800: +Train loss: 4.6163, Val loss: 4.6141 +wikitext-103-v1 - Train loss: 6.0902, Val loss: 6.0754 +ptb - Train loss: 6.0779, Val loss: 6.1421 +lambada - Train loss: 4.8684, Val loss: 4.8734 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 3900: +Train loss: 4.5705, Val loss: 4.5621 +wikitext-103-v1 - Train loss: 5.9822, Val loss: 5.9744 +ptb - Train loss: 5.9144, Val loss: 5.9809 +lambada - Train loss: 4.8407, Val loss: 4.8508 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 4000: +Train loss: 4.5329, Val loss: 4.5314 +wikitext-103-v1 - Train loss: 5.8985, Val loss: 5.8851 +ptb - Train loss: 5.8346, Val loss: 5.9134 +lambada - Train loss: 4.8353, Val loss: 4.8404 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 4100: +Train loss: 4.5016, Val loss: 4.5010 +wikitext-103-v1 - Train loss: 5.8282, Val loss: 5.8129 +ptb - Train loss: 5.7668, Val loss: 5.8410 +lambada - Train loss: 4.8125, Val loss: 4.8162 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 4200: +Train loss: 4.4609, Val loss: 4.4661 +wikitext-103-v1 - Train loss: 5.7749, Val loss: 5.7711 +ptb - Train loss: 5.7258, Val loss: 5.8047 +lambada - Train loss: 4.8025, Val loss: 4.8049 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 4300: +Train loss: 4.4495, Val loss: 4.4390 +wikitext-103-v1 - Train loss: 5.7390, Val loss: 5.7395 +ptb - Train loss: 5.6510, Val loss: 5.7324 +lambada - Train loss: 4.7912, Val loss: 4.8025 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 4400: +Train loss: 4.4168, Val loss: 4.4142 +wikitext-103-v1 - Train loss: 5.6968, Val loss: 5.6867 +ptb - Train loss: 5.6159, Val loss: 5.6959 +lambada - Train loss: 4.7786, Val loss: 4.7813 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 4500: +Train loss: 4.4064, Val loss: 4.4027 +wikitext-103-v1 - Train loss: 5.6604, Val loss: 5.6507 +ptb - Train loss: 5.5948, Val loss: 5.6766 +lambada - Train loss: 4.7725, Val loss: 4.7781 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 4600: +Train loss: 4.3844, Val loss: 4.3857 +wikitext-103-v1 - Train loss: 5.6206, Val loss: 5.6174 +ptb - Train loss: 5.5368, Val loss: 5.6190 +lambada - Train loss: 4.7486, Val loss: 4.7594 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 4700: +Train loss: 4.3697, Val loss: 4.3706 +wikitext-103-v1 - Train loss: 5.6176, Val loss: 5.6061 +ptb - Train loss: 5.5065, Val loss: 5.5915 +lambada - Train loss: 4.7501, Val loss: 4.7532 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 4800: +Train loss: 4.3571, Val loss: 4.3525 +wikitext-103-v1 - Train loss: 5.5913, Val loss: 5.5864 +ptb - Train loss: 5.4873, Val loss: 5.5798 +lambada - Train loss: 4.7269, Val loss: 4.7331 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 4900: +Train loss: 4.3360, Val loss: 4.3359 +wikitext-103-v1 - Train loss: 5.5501, Val loss: 5.5406 +ptb - Train loss: 5.4867, Val loss: 5.5712 +lambada - Train loss: 4.7223, Val loss: 4.7224 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 5000: +Train loss: 4.3203, Val loss: 4.3234 +wikitext-103-v1 - Train loss: 5.5481, Val loss: 5.5385 +ptb - Train loss: 5.4458, Val loss: 5.5343 +lambada - Train loss: 4.7079, Val loss: 4.7165 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 5100: +Train loss: 4.3203, Val loss: 4.3106 +wikitext-103-v1 - Train loss: 5.5291, Val loss: 5.5152 +ptb - Train loss: 5.4549, Val loss: 5.5443 +lambada - Train loss: 4.7138, Val loss: 4.7219 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 5200: +Train loss: 4.3046, Val loss: 4.2944 +wikitext-103-v1 - Train loss: 5.4949, Val loss: 5.4992 +ptb - Train loss: 5.4134, Val loss: 5.4992 +lambada - Train loss: 4.6954, Val loss: 4.7043 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 5300: +Train loss: 4.2878, Val loss: 4.2860 +wikitext-103-v1 - Train loss: 5.5131, Val loss: 5.5090 +ptb - Train loss: 5.4244, Val loss: 5.5092 +lambada - Train loss: 4.6855, Val loss: 4.6917 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 5400: +Train loss: 4.2789, Val loss: 4.2840 +wikitext-103-v1 - Train loss: 5.5012, Val loss: 5.4918 +ptb - Train loss: 5.3856, Val loss: 5.4761 +lambada - Train loss: 4.6795, Val loss: 4.6860 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 5500: +Train loss: 4.2703, Val loss: 4.2726 +wikitext-103-v1 - Train loss: 5.5000, Val loss: 5.4925 +ptb - Train loss: 5.3889, Val loss: 5.4848 +lambada - Train loss: 4.6851, Val loss: 4.6930 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 5600: +Train loss: 4.2488, Val loss: 4.2544 +wikitext-103-v1 - Train loss: 5.4817, Val loss: 5.4672 +ptb - Train loss: 5.3678, Val loss: 5.4582 +lambada - Train loss: 4.6648, Val loss: 4.6722 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 5700: +Train loss: 4.2542, Val loss: 4.2552 +wikitext-103-v1 - Train loss: 5.4801, Val loss: 5.4633 +ptb - Train loss: 5.3624, Val loss: 5.4544 +lambada - Train loss: 4.6664, Val loss: 4.6732 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 5800: +Train loss: 4.2443, Val loss: 4.2450 +wikitext-103-v1 - Train loss: 5.4609, Val loss: 5.4520 +ptb - Train loss: 5.3276, Val loss: 5.4197 +lambada - Train loss: 4.6680, Val loss: 4.6676 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 5900: +Train loss: 4.2386, Val loss: 4.2385 +wikitext-103-v1 - Train loss: 5.4701, Val loss: 5.4805 +ptb - Train loss: 5.3818, Val loss: 5.4709 +lambada - Train loss: 4.6483, Val loss: 4.6499 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 6000: +Train loss: 4.2308, Val loss: 4.2307 +wikitext-103-v1 - Train loss: 5.4561, Val loss: 5.4444 +ptb - Train loss: 5.3361, Val loss: 5.4268 +lambada - Train loss: 4.6480, Val loss: 4.6512 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 6100: +Train loss: 4.2275, Val loss: 4.2221 +wikitext-103-v1 - Train loss: 5.4521, Val loss: 5.4346 +ptb - Train loss: 5.3429, Val loss: 5.4357 +lambada - Train loss: 4.6433, Val loss: 4.6474 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 6200: +Train loss: 4.2121, Val loss: 4.2166 +wikitext-103-v1 - Train loss: 5.4558, Val loss: 5.4510 +ptb - Train loss: 5.3219, Val loss: 5.4135 +lambada - Train loss: 4.6328, Val loss: 4.6390 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 6300: +Train loss: 4.2151, Val loss: 4.2099 +wikitext-103-v1 - Train loss: 5.4482, Val loss: 5.4284 +ptb - Train loss: 5.3128, Val loss: 5.4057 +lambada - Train loss: 4.6345, Val loss: 4.6391 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 6400: +Train loss: 4.2002, Val loss: 4.1992 +wikitext-103-v1 - Train loss: 5.4323, Val loss: 5.4158 +ptb - Train loss: 5.3059, Val loss: 5.4046 +lambada - Train loss: 4.6282, Val loss: 4.6345 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 6500: +Train loss: 4.2024, Val loss: 4.1905 +wikitext-103-v1 - Train loss: 5.4369, Val loss: 5.4178 +ptb - Train loss: 5.3059, Val loss: 5.3990 +lambada - Train loss: 4.6284, Val loss: 4.6348 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 6600: +Train loss: 4.1971, Val loss: 4.1950 +wikitext-103-v1 - Train loss: 5.4318, Val loss: 5.4218 +ptb - Train loss: 5.2972, Val loss: 5.3920 +lambada - Train loss: 4.6218, Val loss: 4.6263 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 6700: +Train loss: 4.1946, Val loss: 4.1872 +wikitext-103-v1 - Train loss: 5.4357, Val loss: 5.4182 +ptb - Train loss: 5.2793, Val loss: 5.3731 +lambada - Train loss: 4.6187, Val loss: 4.6201 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 6800: +Train loss: 4.1847, Val loss: 4.1834 +wikitext-103-v1 - Train loss: 5.4225, Val loss: 5.4001 +ptb - Train loss: 5.2784, Val loss: 5.3704 +lambada - Train loss: 4.6230, Val loss: 4.6278 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 6900: +Train loss: 4.1771, Val loss: 4.1781 +wikitext-103-v1 - Train loss: 5.4209, Val loss: 5.4139 +ptb - Train loss: 5.2875, Val loss: 5.3793 +lambada - Train loss: 4.6060, Val loss: 4.6116 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 7000: +Train loss: 4.1778, Val loss: 4.1685 +wikitext-103-v1 - Train loss: 5.4270, Val loss: 5.4145 +ptb - Train loss: 5.2822, Val loss: 5.3797 +lambada - Train loss: 4.6194, Val loss: 4.6176 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 7100: +Train loss: 4.1713, Val loss: 4.1711 +wikitext-103-v1 - Train loss: 5.4056, Val loss: 5.3805 +ptb - Train loss: 5.2436, Val loss: 5.3345 +lambada - Train loss: 4.6003, Val loss: 4.6023 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 7200: +Train loss: 4.1701, Val loss: 4.1645 +wikitext-103-v1 - Train loss: 5.4080, Val loss: 5.4043 +ptb - Train loss: 5.2501, Val loss: 5.3507 +lambada - Train loss: 4.6109, Val loss: 4.6145 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 7300: +Train loss: 4.1646, Val loss: 4.1639 +wikitext-103-v1 - Train loss: 5.4045, Val loss: 5.3850 +ptb - Train loss: 5.2504, Val loss: 5.3473 +lambada - Train loss: 4.6036, Val loss: 4.6079 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 7400: +Train loss: 4.1591, Val loss: 4.1625 +wikitext-103-v1 - Train loss: 5.4017, Val loss: 5.3903 +ptb - Train loss: 5.2513, Val loss: 5.3438 +lambada - Train loss: 4.5989, Val loss: 4.5967 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 7500: +Train loss: 4.1626, Val loss: 4.1592 +wikitext-103-v1 - Train loss: 5.4112, Val loss: 5.3916 +ptb - Train loss: 5.2426, Val loss: 5.3378 +lambada - Train loss: 4.5948, Val loss: 4.6002 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 7600: +Train loss: 4.1491, Val loss: 4.1524 +wikitext-103-v1 - Train loss: 5.3870, Val loss: 5.3705 +ptb - Train loss: 5.2338, Val loss: 5.3275 +lambada - Train loss: 4.5975, Val loss: 4.6011 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 7700: +Train loss: 4.1540, Val loss: 4.1469 +wikitext-103-v1 - Train loss: 5.4006, Val loss: 5.3747 +ptb - Train loss: 5.2304, Val loss: 5.3216 +lambada - Train loss: 4.5943, Val loss: 4.5989 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 7800: +Train loss: 4.1444, Val loss: 4.1426 +wikitext-103-v1 - Train loss: 5.3958, Val loss: 5.3724 +ptb - Train loss: 5.2251, Val loss: 5.3236 +lambada - Train loss: 4.5971, Val loss: 4.6023 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 7900: +Train loss: 4.1461, Val loss: 4.1450 +wikitext-103-v1 - Train loss: 5.3995, Val loss: 5.3774 +ptb - Train loss: 5.2405, Val loss: 5.3325 +lambada - Train loss: 4.5994, Val loss: 4.6009 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 8000: +Train loss: 4.1454, Val loss: 4.1445 +wikitext-103-v1 - Train loss: 5.3888, Val loss: 5.3795 +ptb - Train loss: 5.2505, Val loss: 5.3386 +lambada - Train loss: 4.5884, Val loss: 4.5946 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 8100: +Train loss: 4.1391, Val loss: 4.1402 +wikitext-103-v1 - Train loss: 5.3879, Val loss: 5.3755 +ptb - Train loss: 5.2177, Val loss: 5.3222 +lambada - Train loss: 4.5870, Val loss: 4.5901 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 8200: +Train loss: 4.1408, Val loss: 4.1358 +wikitext-103-v1 - Train loss: 5.3805, Val loss: 5.3581 +ptb - Train loss: 5.2167, Val loss: 5.3079 +lambada - Train loss: 4.5882, Val loss: 4.5889 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 8300: +Train loss: 4.1365, Val loss: 4.1384 +wikitext-103-v1 - Train loss: 5.3855, Val loss: 5.3664 +ptb - Train loss: 5.2094, Val loss: 5.3038 +lambada - Train loss: 4.5864, Val loss: 4.5905 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 8400: +Train loss: 4.1326, Val loss: 4.1310 +wikitext-103-v1 - Train loss: 5.3692, Val loss: 5.3572 +ptb - Train loss: 5.2113, Val loss: 5.3075 +lambada - Train loss: 4.5811, Val loss: 4.5830 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 8500: +Train loss: 4.1317, Val loss: 4.1344 +wikitext-103-v1 - Train loss: 5.3672, Val loss: 5.3515 +ptb - Train loss: 5.2069, Val loss: 5.3133 +lambada - Train loss: 4.5796, Val loss: 4.5838 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 8600: +Train loss: 4.1268, Val loss: 4.1231 +wikitext-103-v1 - Train loss: 5.3688, Val loss: 5.3471 +ptb - Train loss: 5.2089, Val loss: 5.3019 +lambada - Train loss: 4.5819, Val loss: 4.5815 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 8700: +Train loss: 4.1304, Val loss: 4.1265 +wikitext-103-v1 - Train loss: 5.3695, Val loss: 5.3512 +ptb - Train loss: 5.2094, Val loss: 5.3115 +lambada - Train loss: 4.5825, Val loss: 4.5865 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 8800: +Train loss: 4.1257, Val loss: 4.1229 +wikitext-103-v1 - Train loss: 5.3770, Val loss: 5.3539 +ptb - Train loss: 5.2078, Val loss: 5.2958 +lambada - Train loss: 4.5771, Val loss: 4.5780 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 8900: +Train loss: 4.1246, Val loss: 4.1215 +wikitext-103-v1 - Train loss: 5.3660, Val loss: 5.3548 +ptb - Train loss: 5.1968, Val loss: 5.2953 +lambada - Train loss: 4.5802, Val loss: 4.5840 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 9000: +Train loss: 4.1209, Val loss: 4.1099 +wikitext-103-v1 - Train loss: 5.3789, Val loss: 5.3428 +ptb - Train loss: 5.1964, Val loss: 5.2946 +lambada - Train loss: 4.5719, Val loss: 4.5733 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 9100: +Train loss: 4.1201, Val loss: 4.1197 +wikitext-103-v1 - Train loss: 5.3678, Val loss: 5.3518 +ptb - Train loss: 5.2057, Val loss: 5.3053 +lambada - Train loss: 4.5748, Val loss: 4.5793 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 9200: +Train loss: 4.1163, Val loss: 4.1182 +wikitext-103-v1 - Train loss: 5.3473, Val loss: 5.3360 +ptb - Train loss: 5.1957, Val loss: 5.2912 +lambada - Train loss: 4.5731, Val loss: 4.5757 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 9300: +Train loss: 4.1131, Val loss: 4.1206 +wikitext-103-v1 - Train loss: 5.3571, Val loss: 5.3414 +ptb - Train loss: 5.1896, Val loss: 5.2884 +lambada - Train loss: 4.5723, Val loss: 4.5767 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 9400: +Train loss: 4.1184, Val loss: 4.1098 +wikitext-103-v1 - Train loss: 5.3439, Val loss: 5.3328 +ptb - Train loss: 5.1906, Val loss: 5.2857 +lambada - Train loss: 4.5687, Val loss: 4.5696 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 9500: +Train loss: 4.1078, Val loss: 4.1110 +wikitext-103-v1 - Train loss: 5.3599, Val loss: 5.3372 +ptb - Train loss: 5.1928, Val loss: 5.2903 +lambada - Train loss: 4.5731, Val loss: 4.5792 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 9600: +Train loss: 4.1079, Val loss: 4.1032 +wikitext-103-v1 - Train loss: 5.3550, Val loss: 5.3240 +ptb - Train loss: 5.1929, Val loss: 5.2909 +lambada - Train loss: 4.5700, Val loss: 4.5678 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 9700: +Train loss: 4.1067, Val loss: 4.1131 +wikitext-103-v1 - Train loss: 5.3451, Val loss: 5.3215 +ptb - Train loss: 5.1903, Val loss: 5.2921 +lambada - Train loss: 4.5720, Val loss: 4.5721 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 9800: +Train loss: 4.1052, Val loss: 4.1070 +wikitext-103-v1 - Train loss: 5.3482, Val loss: 5.3151 +ptb - Train loss: 5.1937, Val loss: 5.2883 +lambada - Train loss: 4.5649, Val loss: 4.5670 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 9900: +Train loss: 4.1035, Val loss: 4.1043 +wikitext-103-v1 - Train loss: 5.3440, Val loss: 5.3188 +ptb - Train loss: 5.1879, Val loss: 5.2874 +lambada - Train loss: 4.5710, Val loss: 4.5673 +Saving checkpoint to out/ckpt_sinusoidal_default.pt + +Step 10000: +Train loss: 4.1101, Val loss: 4.1073 +wikitext-103-v1 - Train loss: 5.3393, Val loss: 5.3227 +ptb - Train loss: 5.1819, Val loss: 5.2754 +lambada - Train loss: 4.5660, Val loss: 4.5671 +Saving checkpoint to out/ckpt_sinusoidal_default.pt diff --git a/wandb/run-20240926_124123-zc6s8e8w/files/requirements.txt b/wandb/run-20240926_124123-zc6s8e8w/files/requirements.txt new file mode 100644 index 0000000000000000000000000000000000000000..3cd45e0832b399f278ffb005f62b438d1ccf128c --- /dev/null +++ b/wandb/run-20240926_124123-zc6s8e8w/files/requirements.txt @@ -0,0 +1,192 @@ +pytz==2024.2 +xxhash==3.5.0 +tzdata==2024.2 +tqdm==4.66.5 +smmap==5.0.1 +setproctitle==1.3.3 +sentry-sdk==2.14.0 +scipy==1.14.1 +requests==2.32.3 +regex==2024.9.11 +pyarrow==17.0.0 +protobuf==5.28.2 +multidict==6.1.0 +frozenlist==1.4.1 +einops==0.8.0 +docker-pycreds==0.4.0 +dill==0.3.8 +click==8.1.7 +async-timeout==4.0.3 +aiohappyeyeballs==2.4.0 +yarl==1.12.1 +tiktoken==0.7.0 +pandas==2.2.3 +multiprocess==0.70.16 +huggingface-hub==0.25.1 +gitdb==4.0.11 +aiosignal==1.3.1 +GitPython==3.1.43 +aiohttp==3.10.6 +wandb==0.18.1 +flash-attn==2.6.3 +datasets==3.0.0 +pluggy==1.5.0 +iniconfig==2.0.0 +pytest==8.3.3 +nbzip==0.1.0 +jupyter-console==6.6.3 +bash_kernel==0.9.3 +jupyter-http-over-ws==0.0.8 +jupyter==1.1.1 +entrypoints==0.4 +jupyter_client==7.4.9 +nbclassic==1.0.0 +notebook==6.5.5 +pyzmq==24.0.1 +Babel==2.14.0 +PyYAML==6.0.1 +Send2Trash==1.8.2 +anyio==4.2.0 +argon2-cffi==23.1.0 +argon2-cffi-bindings==21.2.0 +arrow==1.3.0 +asttokens==2.4.1 +async-lru==2.0.4 +attrs==23.2.0 +beautifulsoup4==4.12.3 +bleach==6.1.0 +cffi==1.16.0 +comm==0.2.1 +debugpy==1.8.0 +decorator==5.1.1 +defusedxml==0.7.1 +exceptiongroup==1.2.0 +executing==2.0.1 +fastjsonschema==2.19.1 +fqdn==1.5.1 +h11==0.14.0 +httpcore==1.0.2 +httpx==0.26.0 +ipykernel==6.29.0 +ipython==8.21.0 +ipython-genutils==0.2.0 +ipywidgets==8.1.1 +isoduration==20.11.0 +jedi==0.19.1 +json5==0.9.14 +jsonpointer==2.4 +jsonschema==4.21.1 +jsonschema-specifications==2023.12.1 +jupyter-archive==3.4.0 +jupyter_contrib_core==0.4.2 +jupyter_contrib_nbextensions==0.7.0 +jupyter_core==5.7.1 +jupyter-events==0.9.0 +jupyter-highlight-selected-word==0.2.0 +jupyter-lsp==2.2.2 +jupyter-nbextensions-configurator==0.6.3 +jupyter_server==2.12.5 +jupyter_server_terminals==0.5.2 +jupyterlab==4.1.0 +jupyterlab_pygments==0.3.0 +jupyterlab_server==2.25.2 +jupyterlab-widgets==3.0.9 +lxml==5.1.0 +matplotlib-inline==0.1.6 +mistune==3.0.2 +nbclient==0.9.0 +nbconvert==7.14.2 +nbformat==5.9.2 +nest-asyncio==1.6.0 +notebook_shim==0.2.3 +overrides==7.7.0 +packaging==23.2 +pandocfilters==1.5.1 +parso==0.8.3 +pexpect==4.9.0 +platformdirs==4.2.0 +prometheus-client==0.19.0 +prompt-toolkit==3.0.43 +psutil==5.9.8 +ptyprocess==0.7.0 +pure-eval==0.2.2 +pycparser==2.21 +Pygments==2.17.2 +python-dateutil==2.8.2 +python-json-logger==2.0.7 +referencing==0.33.0 +rfc3339-validator==0.1.4 +rfc3986-validator==0.1.1 +rpds-py==0.17.1 +sniffio==1.3.0 +soupsieve==2.5 +stack-data==0.6.3 +terminado==0.18.0 +tinycss2==1.2.1 +tomli==2.0.1 +tornado==6.4 +traitlets==5.14.1 +types-python-dateutil==2.8.19.20240106 +uri-template==1.3.0 +wcwidth==0.2.13 +webcolors==1.13 +webencodings==0.5.1 +websocket-client==1.7.0 +widgetsnbextension==4.0.9 +Jinja2==3.1.3 +MarkupSafe==2.1.5 +certifi==2024.2.2 +charset-normalizer==3.3.2 +filelock==3.13.1 +fsspec==2024.2.0 +idna==3.6 +mpmath==1.3.0 +networkx==3.2.1 +numpy==1.26.3 +nvidia-cublas-cu12==12.1.3.1 +nvidia-cuda-cupti-cu12==12.1.105 +nvidia-cuda-nvrtc-cu12==12.1.105 +nvidia-cuda-runtime-cu12==12.1.105 +nvidia-cudnn-cu12==8.9.2.26 +nvidia-cufft-cu12==11.0.2.54 +nvidia-curand-cu12==10.3.2.106 +nvidia-cusolver-cu12==11.4.5.107 +nvidia-cusparse-cu12==12.1.0.106 +nvidia-nccl-cu12==2.19.3 +nvidia-nvjitlink-cu12==12.3.101 +nvidia-nvtx-cu12==12.1.105 +pillow==10.2.0 +sympy==1.12 +torch==2.2.0 +torchaudio==2.2.0 +torchvision==0.17.0 +triton==2.2.0 +typing_extensions==4.9.0 +urllib3==2.2.0 +pip==24.0 +setuptools==69.0.3 +wheel==0.42.0 +PyGObject==3.42.1 +PyJWT==2.3.0 +SecretStorage==3.3.1 +blinker==1.4 +cryptography==3.4.8 +dbus-python==1.2.18 +distro==1.7.0 +httplib2==0.20.2 +importlib-metadata==4.6.4 +jeepney==0.7.1 +keyring==23.5.0 +launchpadlib==1.10.16 +lazr.restfulclient==0.14.4 +lazr.uri==1.0.6 +more-itertools==8.10.0 +oauthlib==3.2.0 +pyparsing==2.4.7 +python-apt==2.4.0+ubuntu2 +six==1.16.0 +wadllib==1.3.6 +zipp==1.0.0 +setuptools==59.6.0 +wheel==0.37.1 +pip==22.0.2 diff --git a/wandb/run-20240926_124123-zc6s8e8w/files/wandb-metadata.json b/wandb/run-20240926_124123-zc6s8e8w/files/wandb-metadata.json new file mode 100644 index 0000000000000000000000000000000000000000..80287ed470b03202b276d83f7c71a85c6aa81176 --- /dev/null +++ b/wandb/run-20240926_124123-zc6s8e8w/files/wandb-metadata.json @@ -0,0 +1,60 @@ +{ + "os": "Linux-5.15.0-113-generic-x86_64-with-glibc2.35", + "python": "3.10.12", + "startedAt": "2024-09-26T12:41:23.685454Z", + "args": [ + "--batch_size=120" + ], + "program": "/root/train.py", + "codePath": "train.py", + "email": "prasadchandalada@gmail.com", + "root": "/root", + "host": "184d1c0992ce", + "username": "root", + "executable": "/usr/bin/python", + "codePathLocal": "train.py", + "cpu_count": 64, + "cpu_count_logical": 128, + "gpu": "[NVIDIA L40S, NVIDIA L40S, NVIDIA L40S, NVIDIA L40S]", + "gpu_count": 4, + "disk": { + "/": { + "total": "542239621120", + "used": "400673193984" + } + }, + "memory": { + "total": "811327934464" + }, + "cpu": { + "count": 64, + "countLogical": 128 + }, + "gpu_nvidia": [ + { + "name": "NVIDIA L40S", + "memoryTotal": "48305799168", + "cudaCores": 18176, + "architecture": "Ada" + }, + { + "name": "NVIDIA L40S", + "memoryTotal": "48305799168", + "cudaCores": 18176, + "architecture": "Ada" + }, + { + "name": "NVIDIA L40S", + "memoryTotal": "48305799168", + "cudaCores": 18176, + "architecture": "Ada" + }, + { + "name": "NVIDIA L40S", + "memoryTotal": "48305799168", + "cudaCores": 18176, + "architecture": "Ada" + } + ], + "cudaVersion": "12.2" +} \ No newline at end of file diff --git a/wandb/run-20240926_124123-zc6s8e8w/files/wandb-summary.json b/wandb/run-20240926_124123-zc6s8e8w/files/wandb-summary.json new file mode 100644 index 0000000000000000000000000000000000000000..db5ace4325a8ac4accefe27b2f5cf7c47a78a4c8 --- /dev/null +++ b/wandb/run-20240926_124123-zc6s8e8w/files/wandb-summary.json @@ -0,0 +1 @@ +{"time_per_iter_ms":34556.85234069824,"lambada/train_loss":4.565984725952148,"_runtime":24353.707077605,"lr":6e-05,"ptb/train_loss":5.181926250457764,"mfu":8.663875799893605,"iter":10000,"lambada/val_loss":4.567129611968994,"ptb/val_loss":5.275356292724609,"wikitext-103-v1/val_loss":5.322701454162598,"_step":10000,"val/loss":4.107264041900635,"_wandb":{"runtime":24353},"train/loss":4.103699326515198,"wikitext-103-v1/train_loss":5.339298725128174,"_timestamp":1.7273788373491035e+09} \ No newline at end of file diff --git a/wandb/run-20240926_124123-zc6s8e8w/logs/debug-core.log b/wandb/run-20240926_124123-zc6s8e8w/logs/debug-core.log new file mode 100644 index 0000000000000000000000000000000000000000..3bb2d33020377a6ea02d93959ba84df5fc5e225d --- /dev/null +++ b/wandb/run-20240926_124123-zc6s8e8w/logs/debug-core.log @@ -0,0 +1,14 @@ +{"time":"2024-09-26T12:41:23.048835354Z","level":"INFO","msg":"started logging, with flags","port-filename":"/tmp/tmpvaxwxqk7/port-6230.txt","pid":6230,"debug":false,"disable-analytics":false} +{"time":"2024-09-26T12:41:23.048873271Z","level":"INFO","msg":"FeatureState","shutdownOnParentExitEnabled":false} +{"time":"2024-09-26T12:41:23.049626557Z","level":"INFO","msg":"Will exit if parent process dies.","ppid":6230} +{"time":"2024-09-26T12:41:23.049598776Z","level":"INFO","msg":"server is running","addr":{"IP":"127.0.0.1","Port":41101,"Zone":""}} +{"time":"2024-09-26T12:41:23.244733652Z","level":"INFO","msg":"created new connection","id":"127.0.0.1:48216"} +{"time":"2024-09-26T12:41:23.685497123Z","level":"INFO","msg":"connection init received","streamId":"zc6s8e8w","id":"127.0.0.1:48216"} +{"time":"2024-09-26T12:41:23.68571591Z","level":"ERROR","msg":"error creating symlink","error":"symlink /root/.cache/wandb/logs/core-debug-20240926_124123.log /root/wandb/run-20240926_124123-zc6s8e8w/logs/debug-core.log: file exists"} +{"time":"2024-09-26T12:41:23.687506497Z","level":"INFO","msg":"connection init completed","streamId":"zc6s8e8w","id":"127.0.0.1:48216"} +{"time":"2024-09-26T19:27:20.668791042Z","level":"INFO","msg":"handle finish received","streamId":"zc6s8e8w","id":"127.0.0.1:48216"} +{"time":"2024-09-26T19:27:22.057519583Z","level":"INFO","msg":"connection: teardown","id":"127.0.0.1:48216"} +{"time":"2024-09-26T19:27:22.057561736Z","level":"INFO","msg":"server is shutting down"} +{"time":"2024-09-26T19:27:22.057679612Z","level":"INFO","msg":"closed connection","id":"127.0.0.1:48216"} +{"time":"2024-09-26T19:27:22.057729867Z","level":"INFO","msg":"connection closed","id":"127.0.0.1:48216"} +{"time":"2024-09-26T19:27:22.057743237Z","level":"INFO","msg":"server is closed"} diff --git a/wandb/run-20240926_124123-zc6s8e8w/logs/debug-internal.log b/wandb/run-20240926_124123-zc6s8e8w/logs/debug-internal.log new file mode 100644 index 0000000000000000000000000000000000000000..f4124f959953aebec0668b932bfe3a1121ad3875 --- /dev/null +++ b/wandb/run-20240926_124123-zc6s8e8w/logs/debug-internal.log @@ -0,0 +1,22 @@ +{"time":"2024-09-26T12:41:23.685680707Z","level":"INFO","msg":"using version","core version":"0.18.1"} +{"time":"2024-09-26T12:41:23.685697512Z","level":"INFO","msg":"created symlink","path":"/root/wandb/run-20240926_124123-zc6s8e8w/logs/debug-core.log"} +{"time":"2024-09-26T12:41:23.685741909Z","level":"INFO","msg":"using version","core version":"0.18.1"} +{"time":"2024-09-26T12:41:23.685746205Z","level":"INFO","msg":"created symlink","path":"/root/wandb/run-20240926_124123-zc6s8e8w/logs/debug-core.log"} +{"time":"2024-09-26T12:41:23.687487008Z","level":"INFO","msg":"created new stream","id":"zc6s8e8w"} +{"time":"2024-09-26T12:41:23.687502531Z","level":"INFO","msg":"stream: started","id":"zc6s8e8w"} +{"time":"2024-09-26T12:41:23.687516722Z","level":"INFO","msg":"handler: started","stream_id":{"value":"zc6s8e8w"}} +{"time":"2024-09-26T12:41:23.6875622Z","level":"INFO","msg":"writer: Do: started","stream_id":{"value":"zc6s8e8w"}} +{"time":"2024-09-26T12:41:23.68756874Z","level":"INFO","msg":"sender: started","stream_id":{"value":"zc6s8e8w"}} +{"time":"2024-09-26T12:41:24.286441017Z","level":"INFO","msg":"wandb-core","!BADKEY":null} +{"time":"2024-09-26T12:41:24.288378804Z","level":"INFO","msg":"Starting system monitor"} +{"time":"2024-09-26T18:56:25.227300715Z","level":"INFO","msg":"api: retrying HTTP error","status":502,"url":"https://api.wandb.ai/files/tulasiram/gpt2_positional_encodings_100B/zc6s8e8w/file_stream"} +{"time":"2024-09-26T19:27:17.392550012Z","level":"INFO","msg":"Stopping system monitor"} +{"time":"2024-09-26T19:27:17.392880136Z","level":"INFO","msg":"Stopped system monitor"} +{"time":"2024-09-26T19:27:17.85507391Z","level":"WARN","msg":"No job ingredients found, not creating job artifact"} +{"time":"2024-09-26T19:27:17.855096023Z","level":"WARN","msg":"No source type found, not creating job artifact"} +{"time":"2024-09-26T19:27:17.855101722Z","level":"INFO","msg":"sender: sendDefer: no job artifact to save"} +{"time":"2024-09-26T19:27:20.668844632Z","level":"INFO","msg":"stream: closing","id":"zc6s8e8w"} +{"time":"2024-09-26T19:27:20.668866484Z","level":"INFO","msg":"handler: closed","stream_id":{"value":"zc6s8e8w"}} +{"time":"2024-09-26T19:27:20.668887806Z","level":"INFO","msg":"writer: Close: closed","stream_id":{"value":"zc6s8e8w"}} +{"time":"2024-09-26T19:27:20.668917361Z","level":"INFO","msg":"sender: closed","stream_id":{"value":"zc6s8e8w"}} +{"time":"2024-09-26T19:27:20.668992322Z","level":"INFO","msg":"stream: closed","id":"zc6s8e8w"} diff --git a/wandb/run-20240926_192831-378lr5yg/files/output.log b/wandb/run-20240926_192831-378lr5yg/files/output.log new file mode 100644 index 0000000000000000000000000000000000000000..d0dd6d4dd80bae912bf9d360980bf15dd6e37e76 --- /dev/null +++ b/wandb/run-20240926_192831-378lr5yg/files/output.log @@ -0,0 +1,701 @@ +Training polynomial_legendre + default: 5%|▎ | 500/10000 [19:55<5:33:36, 2.11s/it, loss=5.5519, lr=5.98e-04, mfu=9.57%, time_per_iter_ms=2107.15ms] + +Step 100: +Train loss: 7.4597, Val loss: 7.4522 +wikitext-103-v1 - Train loss: 8.3926, Val loss: 8.4009 +ptb - Train loss: 8.1148, Val loss: 8.1198 +lambada - Train loss: 7.2998, Val loss: 7.2967 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 200: +Train loss: 6.4718, Val loss: 6.4689 +wikitext-103-v1 - Train loss: 7.7470, Val loss: 7.7466 +ptb - Train loss: 7.9545, Val loss: 7.9785 +lambada - Train loss: 6.2338, Val loss: 6.2378 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 300: +Train loss: 6.0522, Val loss: 6.0535 +wikitext-103-v1 - Train loss: 7.4484, Val loss: 7.4441 +ptb - Train loss: 7.8035, Val loss: 7.8461 +lambada - Train loss: 5.7923, Val loss: 5.8016 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 400: +Train loss: 5.7377, Val loss: 5.7300 +wikitext-103-v1 - Train loss: 7.1979, Val loss: 7.1994 +ptb - Train loss: 7.6615, Val loss: 7.6879 +lambada - Train loss: 5.5881, Val loss: 5.5964 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 500: +Train loss: 5.5210, Val loss: 5.5215 +wikitext-103-v1 - Train loss: 6.9703, Val loss: 6.9784 +ptb - Train loss: 7.4379, Val loss: 7.4637 +lambada - Train loss: 5.4405, Val loss: 5.4503 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 600: +Train loss: 5.3332, Val loss: 5.3309 +wikitext-103-v1 - Train loss: 6.8322, Val loss: 6.8335 +ptb - Train loss: 7.2875, Val loss: 7.3202 +lambada - Train loss: 5.2913, Val loss: 5.3022 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 700: +Train loss: 5.1915, Val loss: 5.1880 +wikitext-103-v1 - Train loss: 6.6932, Val loss: 6.6928 +ptb - Train loss: 7.1455, Val loss: 7.1873 +lambada - Train loss: 5.1853, Val loss: 5.1904 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 800: +Train loss: 5.0395, Val loss: 5.0398 +wikitext-103-v1 - Train loss: 6.5378, Val loss: 6.5273 +ptb - Train loss: 6.9898, Val loss: 7.0281 +lambada - Train loss: 5.0935, Val loss: 5.1035 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 900: +Train loss: 4.9341, Val loss: 4.9304 +wikitext-103-v1 - Train loss: 6.3808, Val loss: 6.3756 +ptb - Train loss: 6.7618, Val loss: 6.8162 +lambada - Train loss: 5.0272, Val loss: 5.0419 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 1000: +Train loss: 4.8252, Val loss: 4.8251 +wikitext-103-v1 - Train loss: 6.2368, Val loss: 6.2372 +ptb - Train loss: 6.4792, Val loss: 6.5367 +lambada - Train loss: 4.9714, Val loss: 4.9783 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 1100: +Train loss: 4.7264, Val loss: 4.7174 +wikitext-103-v1 - Train loss: 6.0328, Val loss: 6.0386 +ptb - Train loss: 6.1187, Val loss: 6.1919 +lambada - Train loss: 4.9137, Val loss: 4.9188 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 1200: +Train loss: 4.6419, Val loss: 4.6365 +wikitext-103-v1 - Train loss: 5.8686, Val loss: 5.8795 +ptb - Train loss: 5.8834, Val loss: 5.9594 +lambada - Train loss: 4.8846, Val loss: 4.8910 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 1300: +Train loss: 4.5802, Val loss: 4.5862 +wikitext-103-v1 - Train loss: 5.7960, Val loss: 5.7898 +ptb - Train loss: 5.7755, Val loss: 5.8471 +lambada - Train loss: 4.8492, Val loss: 4.8544 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 1400: +Train loss: 4.5331, Val loss: 4.5304 +wikitext-103-v1 - Train loss: 5.7145, Val loss: 5.7135 +ptb - Train loss: 5.6579, Val loss: 5.7459 +lambada - Train loss: 4.8219, Val loss: 4.8286 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 1500: +Train loss: 4.4843, Val loss: 4.4820 +wikitext-103-v1 - Train loss: 5.6586, Val loss: 5.6637 +ptb - Train loss: 5.6293, Val loss: 5.7181 +lambada - Train loss: 4.8023, Val loss: 4.8083 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 1600: +Train loss: 4.4420, Val loss: 4.4417 +wikitext-103-v1 - Train loss: 5.6004, Val loss: 5.6031 +ptb - Train loss: 5.5379, Val loss: 5.6211 +lambada - Train loss: 4.7860, Val loss: 4.7903 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 1700: +Train loss: 4.4294, Val loss: 4.4168 +wikitext-103-v1 - Train loss: 5.6210, Val loss: 5.6157 +ptb - Train loss: 5.5652, Val loss: 5.6604 +lambada - Train loss: 4.7605, Val loss: 4.7672 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 1800: +Train loss: 4.3842, Val loss: 4.3807 +wikitext-103-v1 - Train loss: 5.5456, Val loss: 5.5378 +ptb - Train loss: 5.4947, Val loss: 5.5873 +lambada - Train loss: 4.7492, Val loss: 4.7554 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 1900: +Train loss: 4.3532, Val loss: 4.3649 +wikitext-103-v1 - Train loss: 5.5231, Val loss: 5.5250 +ptb - Train loss: 5.4515, Val loss: 5.5357 +lambada - Train loss: 4.7402, Val loss: 4.7498 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 2000: +Train loss: 4.3393, Val loss: 4.3348 +wikitext-103-v1 - Train loss: 5.5005, Val loss: 5.4957 +ptb - Train loss: 5.4500, Val loss: 5.5386 +lambada - Train loss: 4.7273, Val loss: 4.7271 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 2100: +Train loss: 4.3217, Val loss: 4.3246 +wikitext-103-v1 - Train loss: 5.4902, Val loss: 5.4854 +ptb - Train loss: 5.4095, Val loss: 5.4963 +lambada - Train loss: 4.7086, Val loss: 4.7196 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 2200: +Train loss: 4.3001, Val loss: 4.3025 +wikitext-103-v1 - Train loss: 5.4586, Val loss: 5.4550 +ptb - Train loss: 5.4047, Val loss: 5.5025 +lambada - Train loss: 4.7095, Val loss: 4.7218 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 2300: +Train loss: 4.2798, Val loss: 4.2810 +wikitext-103-v1 - Train loss: 5.4538, Val loss: 5.4439 +ptb - Train loss: 5.4005, Val loss: 5.4995 +lambada - Train loss: 4.6849, Val loss: 4.6902 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 2400: +Train loss: 4.2660, Val loss: 4.2689 +wikitext-103-v1 - Train loss: 5.4449, Val loss: 5.4343 +ptb - Train loss: 5.3710, Val loss: 5.4646 +lambada - Train loss: 4.6711, Val loss: 4.6842 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 2500: +Train loss: 4.2487, Val loss: 4.2534 +wikitext-103-v1 - Train loss: 5.3895, Val loss: 5.3750 +ptb - Train loss: 5.2955, Val loss: 5.3947 +lambada - Train loss: 4.6714, Val loss: 4.6761 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 2600: +Train loss: 4.2395, Val loss: 4.2402 +wikitext-103-v1 - Train loss: 5.3842, Val loss: 5.3706 +ptb - Train loss: 5.3087, Val loss: 5.4059 +lambada - Train loss: 4.6669, Val loss: 4.6704 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 2700: +Train loss: 4.2296, Val loss: 4.2257 +wikitext-103-v1 - Train loss: 5.3788, Val loss: 5.3727 +ptb - Train loss: 5.3117, Val loss: 5.4038 +lambada - Train loss: 4.6665, Val loss: 4.6757 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 2800: +Train loss: 4.2146, Val loss: 4.2192 +wikitext-103-v1 - Train loss: 5.3644, Val loss: 5.3553 +ptb - Train loss: 5.2915, Val loss: 5.3846 +lambada - Train loss: 4.6426, Val loss: 4.6493 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 2900: +Train loss: 4.2062, Val loss: 4.2013 +wikitext-103-v1 - Train loss: 5.3555, Val loss: 5.3458 +ptb - Train loss: 5.2874, Val loss: 5.3828 +lambada - Train loss: 4.6427, Val loss: 4.6454 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 3000: +Train loss: 4.1972, Val loss: 4.1904 +wikitext-103-v1 - Train loss: 5.3600, Val loss: 5.3532 +ptb - Train loss: 5.2889, Val loss: 5.3849 +lambada - Train loss: 4.6380, Val loss: 4.6440 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 3100: +Train loss: 4.1850, Val loss: 4.1807 +wikitext-103-v1 - Train loss: 5.3473, Val loss: 5.3336 +ptb - Train loss: 5.2536, Val loss: 5.3499 +lambada - Train loss: 4.6250, Val loss: 4.6303 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 3200: +Train loss: 4.1776, Val loss: 4.1790 +wikitext-103-v1 - Train loss: 5.3474, Val loss: 5.3371 +ptb - Train loss: 5.2609, Val loss: 5.3515 +lambada - Train loss: 4.6259, Val loss: 4.6334 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 3300: +Train loss: 4.1659, Val loss: 4.1677 +wikitext-103-v1 - Train loss: 5.3365, Val loss: 5.3276 +ptb - Train loss: 5.2288, Val loss: 5.3194 +lambada - Train loss: 4.6117, Val loss: 4.6162 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 3400: +Train loss: 4.1557, Val loss: 4.1581 +wikitext-103-v1 - Train loss: 5.3206, Val loss: 5.2991 +ptb - Train loss: 5.2387, Val loss: 5.3291 +lambada - Train loss: 4.6203, Val loss: 4.6235 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 3500: +Train loss: 4.1568, Val loss: 4.1544 +wikitext-103-v1 - Train loss: 5.3170, Val loss: 5.3096 +ptb - Train loss: 5.2348, Val loss: 5.3227 +lambada - Train loss: 4.5969, Val loss: 4.6027 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 3600: +Train loss: 4.1428, Val loss: 4.1394 +wikitext-103-v1 - Train loss: 5.3016, Val loss: 5.2945 +ptb - Train loss: 5.2203, Val loss: 5.3210 +lambada - Train loss: 4.6023, Val loss: 4.6068 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 3700: +Train loss: 4.1457, Val loss: 4.1398 +wikitext-103-v1 - Train loss: 5.2848, Val loss: 5.2698 +ptb - Train loss: 5.1997, Val loss: 5.2903 +lambada - Train loss: 4.5990, Val loss: 4.6032 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 3800: +Train loss: 4.1303, Val loss: 4.1273 +wikitext-103-v1 - Train loss: 5.2804, Val loss: 5.2579 +ptb - Train loss: 5.1459, Val loss: 5.2446 +lambada - Train loss: 4.5898, Val loss: 4.5888 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 3900: +Train loss: 4.1258, Val loss: 4.1197 +wikitext-103-v1 - Train loss: 5.2756, Val loss: 5.2594 +ptb - Train loss: 5.1742, Val loss: 5.2659 +lambada - Train loss: 4.5875, Val loss: 4.5928 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 4000: +Train loss: 4.1182, Val loss: 4.1185 +wikitext-103-v1 - Train loss: 5.2717, Val loss: 5.2523 +ptb - Train loss: 5.1731, Val loss: 5.2722 +lambada - Train loss: 4.5912, Val loss: 4.5951 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 4100: +Train loss: 4.1172, Val loss: 4.1164 +wikitext-103-v1 - Train loss: 5.2659, Val loss: 5.2451 +ptb - Train loss: 5.1840, Val loss: 5.2785 +lambada - Train loss: 4.5914, Val loss: 4.5925 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 4200: +Train loss: 4.1034, Val loss: 4.1098 +wikitext-103-v1 - Train loss: 5.2520, Val loss: 5.2420 +ptb - Train loss: 5.1775, Val loss: 5.2711 +lambada - Train loss: 4.5804, Val loss: 4.5821 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 4300: +Train loss: 4.1056, Val loss: 4.0951 +wikitext-103-v1 - Train loss: 5.2467, Val loss: 5.2427 +ptb - Train loss: 5.1741, Val loss: 5.2682 +lambada - Train loss: 4.5633, Val loss: 4.5733 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 4400: +Train loss: 4.0984, Val loss: 4.0947 +wikitext-103-v1 - Train loss: 5.2527, Val loss: 5.2361 +ptb - Train loss: 5.1843, Val loss: 5.2730 +lambada - Train loss: 4.5727, Val loss: 4.5763 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 4500: +Train loss: 4.0987, Val loss: 4.0959 +wikitext-103-v1 - Train loss: 5.2460, Val loss: 5.2302 +ptb - Train loss: 5.1477, Val loss: 5.2394 +lambada - Train loss: 4.5646, Val loss: 4.5693 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 4600: +Train loss: 4.0894, Val loss: 4.0896 +wikitext-103-v1 - Train loss: 5.2512, Val loss: 5.2426 +ptb - Train loss: 5.1709, Val loss: 5.2640 +lambada - Train loss: 4.5667, Val loss: 4.5764 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 4700: +Train loss: 4.0833, Val loss: 4.0870 +wikitext-103-v1 - Train loss: 5.2398, Val loss: 5.2229 +ptb - Train loss: 5.1627, Val loss: 5.2537 +lambada - Train loss: 4.5653, Val loss: 4.5675 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 4800: +Train loss: 4.0887, Val loss: 4.0823 +wikitext-103-v1 - Train loss: 5.2291, Val loss: 5.2196 +ptb - Train loss: 5.1495, Val loss: 5.2509 +lambada - Train loss: 4.5620, Val loss: 4.5657 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 4900: +Train loss: 4.0773, Val loss: 4.0771 +wikitext-103-v1 - Train loss: 5.2206, Val loss: 5.2083 +ptb - Train loss: 5.1590, Val loss: 5.2512 +lambada - Train loss: 4.5560, Val loss: 4.5556 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 5000: +Train loss: 4.0669, Val loss: 4.0711 +wikitext-103-v1 - Train loss: 5.2220, Val loss: 5.2077 +ptb - Train loss: 5.1633, Val loss: 5.2567 +lambada - Train loss: 4.5506, Val loss: 4.5566 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 5100: +Train loss: 4.0803, Val loss: 4.0706 +wikitext-103-v1 - Train loss: 5.2477, Val loss: 5.2297 +ptb - Train loss: 5.1871, Val loss: 5.2781 +lambada - Train loss: 4.5592, Val loss: 4.5662 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 5200: +Train loss: 4.0665, Val loss: 4.0571 +wikitext-103-v1 - Train loss: 5.1982, Val loss: 5.1940 +ptb - Train loss: 5.1346, Val loss: 5.2244 +lambada - Train loss: 4.5486, Val loss: 4.5542 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 5300: +Train loss: 4.0623, Val loss: 4.0610 +wikitext-103-v1 - Train loss: 5.2251, Val loss: 5.2142 +ptb - Train loss: 5.1495, Val loss: 5.2376 +lambada - Train loss: 4.5487, Val loss: 4.5521 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 5400: +Train loss: 4.0566, Val loss: 4.0607 +wikitext-103-v1 - Train loss: 5.2074, Val loss: 5.1950 +ptb - Train loss: 5.1368, Val loss: 5.2290 +lambada - Train loss: 4.5420, Val loss: 4.5463 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 5500: +Train loss: 4.0571, Val loss: 4.0592 +wikitext-103-v1 - Train loss: 5.2097, Val loss: 5.1985 +ptb - Train loss: 5.1380, Val loss: 5.2344 +lambada - Train loss: 4.5477, Val loss: 4.5532 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 5600: +Train loss: 4.0439, Val loss: 4.0496 +wikitext-103-v1 - Train loss: 5.1896, Val loss: 5.1704 +ptb - Train loss: 5.1262, Val loss: 5.2161 +lambada - Train loss: 4.5286, Val loss: 4.5349 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 5700: +Train loss: 4.0485, Val loss: 4.0504 +wikitext-103-v1 - Train loss: 5.1964, Val loss: 5.1736 +ptb - Train loss: 5.1192, Val loss: 5.2111 +lambada - Train loss: 4.5389, Val loss: 4.5442 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 5800: +Train loss: 4.0440, Val loss: 4.0452 +wikitext-103-v1 - Train loss: 5.1896, Val loss: 5.1752 +ptb - Train loss: 5.1268, Val loss: 5.2214 +lambada - Train loss: 4.5379, Val loss: 4.5360 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 5900: +Train loss: 4.0413, Val loss: 4.0424 +wikitext-103-v1 - Train loss: 5.1791, Val loss: 5.1821 +ptb - Train loss: 5.1397, Val loss: 5.2276 +lambada - Train loss: 4.5255, Val loss: 4.5259 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 6000: +Train loss: 4.0393, Val loss: 4.0400 +wikitext-103-v1 - Train loss: 5.1905, Val loss: 5.1776 +ptb - Train loss: 5.1250, Val loss: 5.2155 +lambada - Train loss: 4.5353, Val loss: 4.5375 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 6100: +Train loss: 4.0417, Val loss: 4.0357 +wikitext-103-v1 - Train loss: 5.1925, Val loss: 5.1695 +ptb - Train loss: 5.1315, Val loss: 5.2256 +lambada - Train loss: 4.5319, Val loss: 4.5349 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 6200: +Train loss: 4.0318, Val loss: 4.0368 +wikitext-103-v1 - Train loss: 5.1808, Val loss: 5.1694 +ptb - Train loss: 5.1240, Val loss: 5.2152 +lambada - Train loss: 4.5267, Val loss: 4.5326 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 6300: +Train loss: 4.0357, Val loss: 4.0307 +wikitext-103-v1 - Train loss: 5.1823, Val loss: 5.1597 +ptb - Train loss: 5.1298, Val loss: 5.2232 +lambada - Train loss: 4.5217, Val loss: 4.5258 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 6400: +Train loss: 4.0275, Val loss: 4.0262 +wikitext-103-v1 - Train loss: 5.1810, Val loss: 5.1615 +ptb - Train loss: 5.1167, Val loss: 5.2125 +lambada - Train loss: 4.5218, Val loss: 4.5267 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 6500: +Train loss: 4.0336, Val loss: 4.0220 +wikitext-103-v1 - Train loss: 5.1867, Val loss: 5.1639 +ptb - Train loss: 5.1153, Val loss: 5.2068 +lambada - Train loss: 4.5239, Val loss: 4.5294 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 6600: +Train loss: 4.0280, Val loss: 4.0261 +wikitext-103-v1 - Train loss: 5.1755, Val loss: 5.1643 +ptb - Train loss: 5.1245, Val loss: 5.2180 +lambada - Train loss: 4.5178, Val loss: 4.5213 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 6700: +Train loss: 4.0298, Val loss: 4.0212 +wikitext-103-v1 - Train loss: 5.1670, Val loss: 5.1500 +ptb - Train loss: 5.1184, Val loss: 5.2109 +lambada - Train loss: 4.5201, Val loss: 4.5212 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 6800: +Train loss: 4.0216, Val loss: 4.0213 +wikitext-103-v1 - Train loss: 5.1660, Val loss: 5.1424 +ptb - Train loss: 5.0913, Val loss: 5.1820 +lambada - Train loss: 4.5218, Val loss: 4.5261 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 6900: +Train loss: 4.0157, Val loss: 4.0177 +wikitext-103-v1 - Train loss: 5.1614, Val loss: 5.1541 +ptb - Train loss: 5.1108, Val loss: 5.2000 +lambada - Train loss: 4.5101, Val loss: 4.5150 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 7000: +Train loss: 4.0194, Val loss: 4.0091 +wikitext-103-v1 - Train loss: 5.1598, Val loss: 5.1463 +ptb - Train loss: 5.1022, Val loss: 5.1989 +lambada - Train loss: 4.5198, Val loss: 4.5181 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 7100: +Train loss: 4.0158, Val loss: 4.0156 +wikitext-103-v1 - Train loss: 5.1697, Val loss: 5.1468 +ptb - Train loss: 5.0978, Val loss: 5.1876 +lambada - Train loss: 4.5103, Val loss: 4.5121 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 7200: +Train loss: 4.0167, Val loss: 4.0125 +wikitext-103-v1 - Train loss: 5.1561, Val loss: 5.1514 +ptb - Train loss: 5.0900, Val loss: 5.1902 +lambada - Train loss: 4.5237, Val loss: 4.5277 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 7300: +Train loss: 4.0134, Val loss: 4.0132 +wikitext-103-v1 - Train loss: 5.1611, Val loss: 5.1446 +ptb - Train loss: 5.0971, Val loss: 5.1909 +lambada - Train loss: 4.5101, Val loss: 4.5144 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 7400: +Train loss: 4.0097, Val loss: 4.0140 +wikitext-103-v1 - Train loss: 5.1624, Val loss: 5.1514 +ptb - Train loss: 5.0835, Val loss: 5.1742 +lambada - Train loss: 4.5130, Val loss: 4.5111 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 7500: +Train loss: 4.0134, Val loss: 4.0107 +wikitext-103-v1 - Train loss: 5.1601, Val loss: 5.1421 +ptb - Train loss: 5.0869, Val loss: 5.1814 +lambada - Train loss: 4.5064, Val loss: 4.5112 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 7600: +Train loss: 4.0041, Val loss: 4.0077 +wikitext-103-v1 - Train loss: 5.1541, Val loss: 5.1392 +ptb - Train loss: 5.0828, Val loss: 5.1758 +lambada - Train loss: 4.5089, Val loss: 4.5133 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 7700: +Train loss: 4.0110, Val loss: 4.0034 +wikitext-103-v1 - Train loss: 5.1563, Val loss: 5.1328 +ptb - Train loss: 5.0907, Val loss: 5.1817 +lambada - Train loss: 4.5082, Val loss: 4.5130 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 7800: +Train loss: 4.0025, Val loss: 4.0005 +wikitext-103-v1 - Train loss: 5.1574, Val loss: 5.1370 +ptb - Train loss: 5.0778, Val loss: 5.1738 +lambada - Train loss: 4.5067, Val loss: 4.5123 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 7900: +Train loss: 4.0050, Val loss: 4.0036 +wikitext-103-v1 - Train loss: 5.1474, Val loss: 5.1267 +ptb - Train loss: 5.0865, Val loss: 5.1769 +lambada - Train loss: 4.5088, Val loss: 4.5105 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 8000: +Train loss: 4.0069, Val loss: 4.0059 +wikitext-103-v1 - Train loss: 5.1443, Val loss: 5.1368 +ptb - Train loss: 5.0940, Val loss: 5.1803 +lambada - Train loss: 4.5085, Val loss: 4.5135 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 8100: +Train loss: 4.0009, Val loss: 4.0019 +wikitext-103-v1 - Train loss: 5.1449, Val loss: 5.1331 +ptb - Train loss: 5.0791, Val loss: 5.1815 +lambada - Train loss: 4.5017, Val loss: 4.5050 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 8200: +Train loss: 4.0042, Val loss: 3.9993 +wikitext-103-v1 - Train loss: 5.1478, Val loss: 5.1288 +ptb - Train loss: 5.0675, Val loss: 5.1586 +lambada - Train loss: 4.5035, Val loss: 4.5043 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 8300: +Train loss: 4.0013, Val loss: 4.0035 +wikitext-103-v1 - Train loss: 5.1449, Val loss: 5.1283 +ptb - Train loss: 5.0635, Val loss: 5.1555 +lambada - Train loss: 4.5023, Val loss: 4.5075 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 8400: +Train loss: 3.9993, Val loss: 3.9973 +wikitext-103-v1 - Train loss: 5.1385, Val loss: 5.1293 +ptb - Train loss: 5.0726, Val loss: 5.1659 +lambada - Train loss: 4.5003, Val loss: 4.5025 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 8500: +Train loss: 3.9993, Val loss: 4.0022 +wikitext-103-v1 - Train loss: 5.1388, Val loss: 5.1251 +ptb - Train loss: 5.0683, Val loss: 5.1725 +lambada - Train loss: 4.5051, Val loss: 4.5101 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 8600: +Train loss: 3.9949, Val loss: 3.9908 +wikitext-103-v1 - Train loss: 5.1445, Val loss: 5.1280 +ptb - Train loss: 5.0725, Val loss: 5.1632 +lambada - Train loss: 4.5025, Val loss: 4.5034 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 8700: +Train loss: 3.9995, Val loss: 3.9957 +wikitext-103-v1 - Train loss: 5.1387, Val loss: 5.1252 +ptb - Train loss: 5.0719, Val loss: 5.1723 +lambada - Train loss: 4.5001, Val loss: 4.5054 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 8800: +Train loss: 3.9968, Val loss: 3.9938 +wikitext-103-v1 - Train loss: 5.1449, Val loss: 5.1266 +ptb - Train loss: 5.0735, Val loss: 5.1615 +lambada - Train loss: 4.4955, Val loss: 4.4976 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 8900: +Train loss: 3.9958, Val loss: 3.9931 +wikitext-103-v1 - Train loss: 5.1348, Val loss: 5.1260 +ptb - Train loss: 5.0720, Val loss: 5.1682 +lambada - Train loss: 4.4972, Val loss: 4.5022 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 9000: +Train loss: 3.9928, Val loss: 3.9825 +wikitext-103-v1 - Train loss: 5.1523, Val loss: 5.1211 +ptb - Train loss: 5.0733, Val loss: 5.1687 +lambada - Train loss: 4.4932, Val loss: 4.4956 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 9100: +Train loss: 3.9934, Val loss: 3.9928 +wikitext-103-v1 - Train loss: 5.1446, Val loss: 5.1325 +ptb - Train loss: 5.0773, Val loss: 5.1746 +lambada - Train loss: 4.4983, Val loss: 4.5031 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 9200: +Train loss: 3.9900, Val loss: 3.9923 +wikitext-103-v1 - Train loss: 5.1277, Val loss: 5.1221 +ptb - Train loss: 5.0673, Val loss: 5.1629 +lambada - Train loss: 4.4939, Val loss: 4.4970 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 9300: +Train loss: 3.9872, Val loss: 3.9952 +wikitext-103-v1 - Train loss: 5.1379, Val loss: 5.1254 +ptb - Train loss: 5.0631, Val loss: 5.1599 +lambada - Train loss: 4.4972, Val loss: 4.5022 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 9400: +Train loss: 3.9939, Val loss: 3.9851 +wikitext-103-v1 - Train loss: 5.1345, Val loss: 5.1299 +ptb - Train loss: 5.0668, Val loss: 5.1603 +lambada - Train loss: 4.4952, Val loss: 4.4961 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 9500: +Train loss: 3.9843, Val loss: 3.9875 +wikitext-103-v1 - Train loss: 5.1442, Val loss: 5.1252 +ptb - Train loss: 5.0696, Val loss: 5.1666 +lambada - Train loss: 4.4979, Val loss: 4.5035 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 9600: +Train loss: 3.9847, Val loss: 3.9802 +wikitext-103-v1 - Train loss: 5.1402, Val loss: 5.1154 +ptb - Train loss: 5.0645, Val loss: 5.1614 +lambada - Train loss: 4.4967, Val loss: 4.4960 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 9700: +Train loss: 3.9849, Val loss: 3.9909 +wikitext-103-v1 - Train loss: 5.1415, Val loss: 5.1223 +ptb - Train loss: 5.0585, Val loss: 5.1578 +lambada - Train loss: 4.4963, Val loss: 4.4969 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 9800: +Train loss: 3.9835, Val loss: 3.9852 +wikitext-103-v1 - Train loss: 5.1340, Val loss: 5.1075 +ptb - Train loss: 5.0617, Val loss: 5.1558 +lambada - Train loss: 4.4893, Val loss: 4.4923 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 9900: +Train loss: 3.9826, Val loss: 3.9838 +wikitext-103-v1 - Train loss: 5.1304, Val loss: 5.1113 +ptb - Train loss: 5.0630, Val loss: 5.1598 +lambada - Train loss: 4.4954, Val loss: 4.4922 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt + +Step 10000: +Train loss: 3.9897, Val loss: 3.9871 +wikitext-103-v1 - Train loss: 5.1310, Val loss: 5.1185 +ptb - Train loss: 5.0617, Val loss: 5.1549 +lambada - Train loss: 4.4894, Val loss: 4.4910 +Saving checkpoint to out/ckpt_polynomial_legendre_default.pt diff --git a/wandb/run-20240926_192831-378lr5yg/files/requirements.txt b/wandb/run-20240926_192831-378lr5yg/files/requirements.txt new file mode 100644 index 0000000000000000000000000000000000000000..3cd45e0832b399f278ffb005f62b438d1ccf128c --- /dev/null +++ b/wandb/run-20240926_192831-378lr5yg/files/requirements.txt @@ -0,0 +1,192 @@ +pytz==2024.2 +xxhash==3.5.0 +tzdata==2024.2 +tqdm==4.66.5 +smmap==5.0.1 +setproctitle==1.3.3 +sentry-sdk==2.14.0 +scipy==1.14.1 +requests==2.32.3 +regex==2024.9.11 +pyarrow==17.0.0 +protobuf==5.28.2 +multidict==6.1.0 +frozenlist==1.4.1 +einops==0.8.0 +docker-pycreds==0.4.0 +dill==0.3.8 +click==8.1.7 +async-timeout==4.0.3 +aiohappyeyeballs==2.4.0 +yarl==1.12.1 +tiktoken==0.7.0 +pandas==2.2.3 +multiprocess==0.70.16 +huggingface-hub==0.25.1 +gitdb==4.0.11 +aiosignal==1.3.1 +GitPython==3.1.43 +aiohttp==3.10.6 +wandb==0.18.1 +flash-attn==2.6.3 +datasets==3.0.0 +pluggy==1.5.0 +iniconfig==2.0.0 +pytest==8.3.3 +nbzip==0.1.0 +jupyter-console==6.6.3 +bash_kernel==0.9.3 +jupyter-http-over-ws==0.0.8 +jupyter==1.1.1 +entrypoints==0.4 +jupyter_client==7.4.9 +nbclassic==1.0.0 +notebook==6.5.5 +pyzmq==24.0.1 +Babel==2.14.0 +PyYAML==6.0.1 +Send2Trash==1.8.2 +anyio==4.2.0 +argon2-cffi==23.1.0 +argon2-cffi-bindings==21.2.0 +arrow==1.3.0 +asttokens==2.4.1 +async-lru==2.0.4 +attrs==23.2.0 +beautifulsoup4==4.12.3 +bleach==6.1.0 +cffi==1.16.0 +comm==0.2.1 +debugpy==1.8.0 +decorator==5.1.1 +defusedxml==0.7.1 +exceptiongroup==1.2.0 +executing==2.0.1 +fastjsonschema==2.19.1 +fqdn==1.5.1 +h11==0.14.0 +httpcore==1.0.2 +httpx==0.26.0 +ipykernel==6.29.0 +ipython==8.21.0 +ipython-genutils==0.2.0 +ipywidgets==8.1.1 +isoduration==20.11.0 +jedi==0.19.1 +json5==0.9.14 +jsonpointer==2.4 +jsonschema==4.21.1 +jsonschema-specifications==2023.12.1 +jupyter-archive==3.4.0 +jupyter_contrib_core==0.4.2 +jupyter_contrib_nbextensions==0.7.0 +jupyter_core==5.7.1 +jupyter-events==0.9.0 +jupyter-highlight-selected-word==0.2.0 +jupyter-lsp==2.2.2 +jupyter-nbextensions-configurator==0.6.3 +jupyter_server==2.12.5 +jupyter_server_terminals==0.5.2 +jupyterlab==4.1.0 +jupyterlab_pygments==0.3.0 +jupyterlab_server==2.25.2 +jupyterlab-widgets==3.0.9 +lxml==5.1.0 +matplotlib-inline==0.1.6 +mistune==3.0.2 +nbclient==0.9.0 +nbconvert==7.14.2 +nbformat==5.9.2 +nest-asyncio==1.6.0 +notebook_shim==0.2.3 +overrides==7.7.0 +packaging==23.2 +pandocfilters==1.5.1 +parso==0.8.3 +pexpect==4.9.0 +platformdirs==4.2.0 +prometheus-client==0.19.0 +prompt-toolkit==3.0.43 +psutil==5.9.8 +ptyprocess==0.7.0 +pure-eval==0.2.2 +pycparser==2.21 +Pygments==2.17.2 +python-dateutil==2.8.2 +python-json-logger==2.0.7 +referencing==0.33.0 +rfc3339-validator==0.1.4 +rfc3986-validator==0.1.1 +rpds-py==0.17.1 +sniffio==1.3.0 +soupsieve==2.5 +stack-data==0.6.3 +terminado==0.18.0 +tinycss2==1.2.1 +tomli==2.0.1 +tornado==6.4 +traitlets==5.14.1 +types-python-dateutil==2.8.19.20240106 +uri-template==1.3.0 +wcwidth==0.2.13 +webcolors==1.13 +webencodings==0.5.1 +websocket-client==1.7.0 +widgetsnbextension==4.0.9 +Jinja2==3.1.3 +MarkupSafe==2.1.5 +certifi==2024.2.2 +charset-normalizer==3.3.2 +filelock==3.13.1 +fsspec==2024.2.0 +idna==3.6 +mpmath==1.3.0 +networkx==3.2.1 +numpy==1.26.3 +nvidia-cublas-cu12==12.1.3.1 +nvidia-cuda-cupti-cu12==12.1.105 +nvidia-cuda-nvrtc-cu12==12.1.105 +nvidia-cuda-runtime-cu12==12.1.105 +nvidia-cudnn-cu12==8.9.2.26 +nvidia-cufft-cu12==11.0.2.54 +nvidia-curand-cu12==10.3.2.106 +nvidia-cusolver-cu12==11.4.5.107 +nvidia-cusparse-cu12==12.1.0.106 +nvidia-nccl-cu12==2.19.3 +nvidia-nvjitlink-cu12==12.3.101 +nvidia-nvtx-cu12==12.1.105 +pillow==10.2.0 +sympy==1.12 +torch==2.2.0 +torchaudio==2.2.0 +torchvision==0.17.0 +triton==2.2.0 +typing_extensions==4.9.0 +urllib3==2.2.0 +pip==24.0 +setuptools==69.0.3 +wheel==0.42.0 +PyGObject==3.42.1 +PyJWT==2.3.0 +SecretStorage==3.3.1 +blinker==1.4 +cryptography==3.4.8 +dbus-python==1.2.18 +distro==1.7.0 +httplib2==0.20.2 +importlib-metadata==4.6.4 +jeepney==0.7.1 +keyring==23.5.0 +launchpadlib==1.10.16 +lazr.restfulclient==0.14.4 +lazr.uri==1.0.6 +more-itertools==8.10.0 +oauthlib==3.2.0 +pyparsing==2.4.7 +python-apt==2.4.0+ubuntu2 +six==1.16.0 +wadllib==1.3.6 +zipp==1.0.0 +setuptools==59.6.0 +wheel==0.37.1 +pip==22.0.2 diff --git a/wandb/run-20240926_192831-378lr5yg/logs/debug-internal.log b/wandb/run-20240926_192831-378lr5yg/logs/debug-internal.log new file mode 100644 index 0000000000000000000000000000000000000000..24a1789587fe6eb9a185b6b35567e61d8f8c8b5e --- /dev/null +++ b/wandb/run-20240926_192831-378lr5yg/logs/debug-internal.log @@ -0,0 +1,24 @@ +{"time":"2024-09-26T19:28:31.945206676Z","level":"INFO","msg":"using version","core version":"0.18.1"} +{"time":"2024-09-26T19:28:31.945223882Z","level":"INFO","msg":"created symlink","path":"/root/wandb/run-20240926_192831-378lr5yg/logs/debug-core.log"} +{"time":"2024-09-26T19:28:31.945266616Z","level":"INFO","msg":"using version","core version":"0.18.1"} +{"time":"2024-09-26T19:28:31.945270712Z","level":"INFO","msg":"created symlink","path":"/root/wandb/run-20240926_192831-378lr5yg/logs/debug-core.log"} +{"time":"2024-09-26T19:28:31.947265925Z","level":"INFO","msg":"created new stream","id":"378lr5yg"} +{"time":"2024-09-26T19:28:31.9472824Z","level":"INFO","msg":"stream: started","id":"378lr5yg"} +{"time":"2024-09-26T19:28:31.947297282Z","level":"INFO","msg":"handler: started","stream_id":{"value":"378lr5yg"}} +{"time":"2024-09-26T19:28:31.947330061Z","level":"INFO","msg":"writer: Do: started","stream_id":{"value":"378lr5yg"}} +{"time":"2024-09-26T19:28:31.947330081Z","level":"INFO","msg":"sender: started","stream_id":{"value":"378lr5yg"}} +{"time":"2024-09-26T19:28:32.630762055Z","level":"INFO","msg":"wandb-core","!BADKEY":null} +{"time":"2024-09-26T19:28:32.632273165Z","level":"INFO","msg":"Starting system monitor"} +{"time":"2024-09-26T20:08:32.793876912Z","level":"INFO","msg":"api: retrying HTTP request, no error or response"} +{"time":"2024-09-26T20:11:32.80064061Z","level":"INFO","msg":"api: retrying HTTP request, no error or response"} +{"time":"2024-09-26T21:53:50.285667385Z","level":"INFO","msg":"api: retrying HTTP error","status":502,"url":"https://api.wandb.ai/files/tulasiram/gpt2_positional_encodings_100B/378lr5yg/file_stream"} +{"time":"2024-09-27T02:14:20.48259862Z","level":"INFO","msg":"Stopping system monitor"} +{"time":"2024-09-27T02:14:20.482897487Z","level":"INFO","msg":"Stopped system monitor"} +{"time":"2024-09-27T02:14:20.922671091Z","level":"WARN","msg":"No job ingredients found, not creating job artifact"} +{"time":"2024-09-27T02:14:20.922689258Z","level":"WARN","msg":"No source type found, not creating job artifact"} +{"time":"2024-09-27T02:14:20.922694596Z","level":"INFO","msg":"sender: sendDefer: no job artifact to save"} +{"time":"2024-09-27T02:14:23.053483573Z","level":"INFO","msg":"stream: closing","id":"378lr5yg"} +{"time":"2024-09-27T02:14:23.053517484Z","level":"INFO","msg":"handler: closed","stream_id":{"value":"378lr5yg"}} +{"time":"2024-09-27T02:14:23.053555271Z","level":"INFO","msg":"writer: Close: closed","stream_id":{"value":"378lr5yg"}} +{"time":"2024-09-27T02:14:23.053625005Z","level":"INFO","msg":"sender: closed","stream_id":{"value":"378lr5yg"}} +{"time":"2024-09-27T02:14:23.053745765Z","level":"INFO","msg":"stream: closed","id":"378lr5yg"} diff --git a/wandb/run-20240926_192831-378lr5yg/logs/debug.log b/wandb/run-20240926_192831-378lr5yg/logs/debug.log new file mode 100644 index 0000000000000000000000000000000000000000..c69573f507d48dc8d9bf91ec3b8366b389c1048e --- /dev/null +++ b/wandb/run-20240926_192831-378lr5yg/logs/debug.log @@ -0,0 +1,32 @@ +2024-09-26 19:28:31,941 INFO MainThread:7447 [wandb_setup.py:_flush():77] Current SDK version is 0.18.1 +2024-09-26 19:28:31,941 INFO MainThread:7447 [wandb_setup.py:_flush():77] Configure stats pid to 7447 +2024-09-26 19:28:31,941 INFO MainThread:7447 [wandb_setup.py:_flush():77] Loading settings from /root/.config/wandb/settings +2024-09-26 19:28:31,941 INFO MainThread:7447 [wandb_setup.py:_flush():77] Loading settings from /root/wandb/settings +2024-09-26 19:28:31,941 INFO MainThread:7447 [wandb_setup.py:_flush():77] Loading settings from environment variables: {} +2024-09-26 19:28:31,941 INFO MainThread:7447 [wandb_setup.py:_flush():77] Applying setup settings: {'mode': None, '_disable_service': None} +2024-09-26 19:28:31,941 INFO MainThread:7447 [wandb_setup.py:_flush():77] Inferring run settings from compute environment: {'program_relpath': 'train.py', 'program_abspath': '/root/train.py', 'program': '/root/train.py'} +2024-09-26 19:28:31,941 INFO MainThread:7447 [wandb_setup.py:_flush():77] Applying login settings: {} +2024-09-26 19:28:31,941 INFO MainThread:7447 [wandb_init.py:_log_setup():532] Logging user logs to /root/wandb/run-20240926_192831-378lr5yg/logs/debug.log +2024-09-26 19:28:31,942 INFO MainThread:7447 [wandb_init.py:_log_setup():533] Logging internal logs to /root/wandb/run-20240926_192831-378lr5yg/logs/debug-internal.log +2024-09-26 19:28:31,942 INFO MainThread:7447 [wandb_init.py:init():616] calling init triggers +2024-09-26 19:28:31,942 INFO MainThread:7447 [wandb_init.py:init():623] wandb.init called with sweep_config: {} +config: {'out_dir': 'out', 'eval_interval': 100, 'log_interval': 1, 'eval_iters': 100, 'eval_only': False, 'always_save_checkpoint': True, 'init_from': 'scratch', 'checkpoint_path': '', 'wandb_log': True, 'wandb_project': 'gpt2_positional_encodings_100B', 'wandb_run_name': 'experiment', 'dataset': 'fineweb', 'gradient_accumulation_steps': 40, 'batch_size': 120, 'block_size': 512, 'n_layer': 4, 'n_head': 4, 'n_embd': 256, 'dropout': 0.0, 'bias': False, 'learning_rate': 0.0006, 'max_iters': 10000, 'weight_decay': 0.1, 'beta1': 0.9, 'beta2': 0.95, 'grad_clip': 1.0, 'decay_lr': True, 'warmup_iters': 100, 'lr_decay_iters': 10000, 'min_lr': 6e-05, 'backend': 'nccl', 'device': 'cuda', 'dtype': 'bfloat16', 'compile': True, 'embedding_types': ['polynomial_legendre', 'polynomial_chebyshev', 'random_fourier', 'wavelet'], 'attention_types': ['default'], 'collect_attention_patterns': False, 'collect_activations': False, 'eval_datasets': ['wikitext-103-v1', 'ptb', 'lambada'], 'seed': 1337} +2024-09-26 19:28:31,942 INFO MainThread:7447 [wandb_init.py:init():666] starting backend +2024-09-26 19:28:31,942 INFO MainThread:7447 [wandb_init.py:init():670] setting up manager +2024-09-26 19:28:31,943 INFO MainThread:7447 [backend.py:_multiprocessing_setup():105] multiprocessing start_methods=fork,spawn,forkserver, using: spawn +2024-09-26 19:28:31,944 INFO MainThread:7447 [wandb_init.py:init():678] backend started and connected +2024-09-26 19:28:31,947 INFO MainThread:7447 [wandb_init.py:init():773] updated telemetry +2024-09-26 19:28:31,948 INFO MainThread:7447 [wandb_init.py:init():806] communicating run to backend with 90.0 second timeout +2024-09-26 19:28:32,626 INFO MainThread:7447 [wandb_init.py:init():857] starting run threads in backend +2024-09-26 19:28:32,764 INFO MainThread:7447 [wandb_run.py:_console_start():2459] atexit reg +2024-09-26 19:28:32,764 INFO MainThread:7447 [wandb_run.py:_redirect():2307] redirect: wrap_raw +2024-09-26 19:28:32,764 INFO MainThread:7447 [wandb_run.py:_redirect():2372] Wrapping output streams. +2024-09-26 19:28:32,764 INFO MainThread:7447 [wandb_run.py:_redirect():2397] Redirects installed. +2024-09-26 19:28:32,766 INFO MainThread:7447 [wandb_init.py:init():900] run started, returning control to user process +2024-09-27 02:14:20,481 INFO MainThread:7447 [wandb_run.py:_finish():2158] finishing run tulasiram/gpt2_positional_encodings_100B/378lr5yg +2024-09-27 02:14:20,481 INFO MainThread:7447 [wandb_run.py:_atexit_cleanup():2422] got exitcode: 0 +2024-09-27 02:14:20,481 INFO MainThread:7447 [wandb_run.py:_restore():2404] restore +2024-09-27 02:14:20,482 INFO MainThread:7447 [wandb_run.py:_restore():2410] restore done +2024-09-27 02:14:23,038 INFO MainThread:7447 [wandb_run.py:_footer_history_summary_info():4037] rendering history +2024-09-27 02:14:23,041 INFO MainThread:7447 [wandb_run.py:_footer_history_summary_info():4069] rendering summary +2024-09-27 02:14:23,052 INFO MainThread:7447 [wandb_run.py:_footer_sync_info():3996] logging synced files diff --git a/wandb/run-20240927_021423-clesd0p8/files/output.log b/wandb/run-20240927_021423-clesd0p8/files/output.log new file mode 100644 index 0000000000000000000000000000000000000000..83cd595c9caacf4a919536761a3250fbc37e1f0e --- /dev/null +++ b/wandb/run-20240927_021423-clesd0p8/files/output.log @@ -0,0 +1,687 @@ +Training polynomial_chebyshev + default: 5%|▏ | 500/10000 [19:49<5:33:22, 2.11s/it, loss=6.6709, lr=5.98e-04, mfu=9.57%, time_per_iter_ms=2106.16ms] + +Step 100: +Train loss: 7.6605, Val loss: 7.6532 +wikitext-103-v1 - Train loss: 8.4870, Val loss: 8.4975 +ptb - Train loss: 8.1812, Val loss: 8.1828 +lambada - Train loss: 7.4539, Val loss: 7.4518 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 200: +Train loss: 7.5221, Val loss: 7.5144 +wikitext-103-v1 - Train loss: 8.4421, Val loss: 8.4461 +ptb - Train loss: 8.1084, Val loss: 8.1115 +lambada - Train loss: 7.3499, Val loss: 7.3459 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 300: +Train loss: 6.9785, Val loss: 6.9775 +wikitext-103-v1 - Train loss: 8.1266, Val loss: 8.1226 +ptb - Train loss: 8.1696, Val loss: 8.2056 +lambada - Train loss: 6.8154, Val loss: 6.8136 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 400: +Train loss: 6.7839, Val loss: 6.7801 +wikitext-103-v1 - Train loss: 8.0172, Val loss: 8.0164 +ptb - Train loss: 8.0265, Val loss: 8.0512 +lambada - Train loss: 6.5882, Val loss: 6.5908 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 500: +Train loss: 6.6452, Val loss: 6.6474 +wikitext-103-v1 - Train loss: 7.9340, Val loss: 7.9387 +ptb - Train loss: 8.0740, Val loss: 8.0937 +lambada - Train loss: 6.4384, Val loss: 6.4391 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 600: +Train loss: 6.6132, Val loss: 6.6125 +wikitext-103-v1 - Train loss: 7.9148, Val loss: 7.9190 +ptb - Train loss: 8.1299, Val loss: 8.1506 +lambada - Train loss: 6.4194, Val loss: 6.4167 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 700: +Train loss: 6.5330, Val loss: 6.5304 +wikitext-103-v1 - Train loss: 7.8288, Val loss: 7.8285 +ptb - Train loss: 8.1166, Val loss: 8.1368 +lambada - Train loss: 6.3120, Val loss: 6.3081 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 800: +Train loss: 6.4801, Val loss: 6.4788 +wikitext-103-v1 - Train loss: 7.7944, Val loss: 7.7928 +ptb - Train loss: 8.1132, Val loss: 8.1249 +lambada - Train loss: 6.1783, Val loss: 6.1840 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 900: +Train loss: 6.4210, Val loss: 6.4162 +wikitext-103-v1 - Train loss: 7.7697, Val loss: 7.7796 +ptb - Train loss: 8.1238, Val loss: 8.1393 +lambada - Train loss: 6.1330, Val loss: 6.1458 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 1000: +Train loss: 6.3288, Val loss: 6.3276 +wikitext-103-v1 - Train loss: 7.7362, Val loss: 7.7437 +ptb - Train loss: 8.0290, Val loss: 8.0470 +lambada - Train loss: 6.0430, Val loss: 6.0470 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 1100: +Train loss: 6.2414, Val loss: 6.2343 +wikitext-103-v1 - Train loss: 7.6997, Val loss: 7.6945 +ptb - Train loss: 7.9225, Val loss: 7.9443 +lambada - Train loss: 5.9682, Val loss: 5.9716 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 1200: +Train loss: 6.1849, Val loss: 6.1813 +wikitext-103-v1 - Train loss: 7.6794, Val loss: 7.6927 +ptb - Train loss: 7.9630, Val loss: 7.9872 +lambada - Train loss: 5.9439, Val loss: 5.9492 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 1300: +Train loss: 6.0924, Val loss: 6.1039 +wikitext-103-v1 - Train loss: 7.5974, Val loss: 7.5961 +ptb - Train loss: 7.8509, Val loss: 7.8669 +lambada - Train loss: 5.8390, Val loss: 5.8390 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 1400: +Train loss: 6.0494, Val loss: 6.0468 +wikitext-103-v1 - Train loss: 7.5666, Val loss: 7.5783 +ptb - Train loss: 7.8277, Val loss: 7.8595 +lambada - Train loss: 5.8334, Val loss: 5.8359 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 1500: +Train loss: 5.9949, Val loss: 5.9954 +wikitext-103-v1 - Train loss: 7.5421, Val loss: 7.5532 +ptb - Train loss: 7.7876, Val loss: 7.8087 +lambada - Train loss: 5.7868, Val loss: 5.7917 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 1600: +Train loss: 5.9394, Val loss: 5.9381 +wikitext-103-v1 - Train loss: 7.4839, Val loss: 7.5027 +ptb - Train loss: 7.7631, Val loss: 7.7842 +lambada - Train loss: 5.7538, Val loss: 5.7571 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 1700: +Train loss: 5.8869, Val loss: 5.8780 +wikitext-103-v1 - Train loss: 7.4297, Val loss: 7.4462 +ptb - Train loss: 7.7636, Val loss: 7.7815 +lambada - Train loss: 5.6938, Val loss: 5.6986 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 1800: +Train loss: 5.8234, Val loss: 5.8251 +wikitext-103-v1 - Train loss: 7.3823, Val loss: 7.3843 +ptb - Train loss: 7.7105, Val loss: 7.7342 +lambada - Train loss: 5.6811, Val loss: 5.6827 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 1900: +Train loss: 5.7633, Val loss: 5.7681 +wikitext-103-v1 - Train loss: 7.3312, Val loss: 7.3445 +ptb - Train loss: 7.7081, Val loss: 7.7251 +lambada - Train loss: 5.6485, Val loss: 5.6535 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 2000: +Train loss: 5.7173, Val loss: 5.7138 +wikitext-103-v1 - Train loss: 7.3120, Val loss: 7.3180 +ptb - Train loss: 7.6693, Val loss: 7.6923 +lambada - Train loss: 5.6131, Val loss: 5.6127 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 2100: +Train loss: 5.6769, Val loss: 5.6787 +wikitext-103-v1 - Train loss: 7.3004, Val loss: 7.3055 +ptb - Train loss: 7.6890, Val loss: 7.7114 +lambada - Train loss: 5.5783, Val loss: 5.5859 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 2200: +Train loss: 5.6306, Val loss: 5.6318 +wikitext-103-v1 - Train loss: 7.2506, Val loss: 7.2548 +ptb - Train loss: 7.6427, Val loss: 7.6691 +lambada - Train loss: 5.5393, Val loss: 5.5490 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 2300: +Train loss: 5.5820, Val loss: 5.5839 +wikitext-103-v1 - Train loss: 7.2537, Val loss: 7.2578 +ptb - Train loss: 7.6765, Val loss: 7.7081 +lambada - Train loss: 5.5298, Val loss: 5.5322 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 2400: +Train loss: 5.5258, Val loss: 5.5230 +wikitext-103-v1 - Train loss: 7.1798, Val loss: 7.1847 +ptb - Train loss: 7.5763, Val loss: 7.6061 +lambada - Train loss: 5.4596, Val loss: 5.4686 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 2500: +Train loss: 5.4743, Val loss: 5.4778 +wikitext-103-v1 - Train loss: 7.1326, Val loss: 7.1320 +ptb - Train loss: 7.5011, Val loss: 7.5378 +lambada - Train loss: 5.4367, Val loss: 5.4394 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 2600: +Train loss: 5.4369, Val loss: 5.4359 +wikitext-103-v1 - Train loss: 7.1229, Val loss: 7.1227 +ptb - Train loss: 7.4881, Val loss: 7.5238 +lambada - Train loss: 5.4233, Val loss: 5.4227 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 2700: +Train loss: 5.4032, Val loss: 5.3963 +wikitext-103-v1 - Train loss: 7.0745, Val loss: 7.0824 +ptb - Train loss: 7.4407, Val loss: 7.4792 +lambada - Train loss: 5.3933, Val loss: 5.4004 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 2800: +Train loss: 5.3618, Val loss: 5.3668 +wikitext-103-v1 - Train loss: 7.0268, Val loss: 7.0346 +ptb - Train loss: 7.3990, Val loss: 7.4396 +lambada - Train loss: 5.3706, Val loss: 5.3736 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 2900: +Train loss: 5.3138, Val loss: 5.3102 +wikitext-103-v1 - Train loss: 6.9905, Val loss: 6.9899 +ptb - Train loss: 7.4141, Val loss: 7.4540 +lambada - Train loss: 5.3185, Val loss: 5.3194 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 3000: +Train loss: 5.2853, Val loss: 5.2762 +wikitext-103-v1 - Train loss: 6.9713, Val loss: 6.9709 +ptb - Train loss: 7.3822, Val loss: 7.4262 +lambada - Train loss: 5.3114, Val loss: 5.3142 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 3100: +Train loss: 5.2427, Val loss: 5.2449 +wikitext-103-v1 - Train loss: 6.9245, Val loss: 6.9266 +ptb - Train loss: 7.3269, Val loss: 7.3749 +lambada - Train loss: 5.2626, Val loss: 5.2693 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 3200: +Train loss: 5.2127, Val loss: 5.2119 +wikitext-103-v1 - Train loss: 6.9035, Val loss: 6.9121 +ptb - Train loss: 7.3136, Val loss: 7.3567 +lambada - Train loss: 5.2348, Val loss: 5.2420 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 3300: +Train loss: 5.1795, Val loss: 5.1739 +wikitext-103-v1 - Train loss: 6.8412, Val loss: 6.8521 +ptb - Train loss: 7.2420, Val loss: 7.2894 +lambada - Train loss: 5.2103, Val loss: 5.2159 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 3400: +Train loss: 5.1483, Val loss: 5.1536 +wikitext-103-v1 - Train loss: 6.8540, Val loss: 6.8575 +ptb - Train loss: 7.2735, Val loss: 7.3217 +lambada - Train loss: 5.2013, Val loss: 5.2025 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 3500: +Train loss: 5.1224, Val loss: 5.1159 +wikitext-103-v1 - Train loss: 6.8017, Val loss: 6.8078 +ptb - Train loss: 7.2273, Val loss: 7.2716 +lambada - Train loss: 5.1595, Val loss: 5.1662 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 3600: +Train loss: 5.0904, Val loss: 5.0890 +wikitext-103-v1 - Train loss: 6.7659, Val loss: 6.7703 +ptb - Train loss: 7.2023, Val loss: 7.2554 +lambada - Train loss: 5.1470, Val loss: 5.1498 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 3700: +Train loss: 5.0726, Val loss: 5.0677 +wikitext-103-v1 - Train loss: 6.7286, Val loss: 6.7351 +ptb - Train loss: 7.2157, Val loss: 7.2693 +lambada - Train loss: 5.1356, Val loss: 5.1410 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 3800: +Train loss: 5.0352, Val loss: 5.0368 +wikitext-103-v1 - Train loss: 6.7206, Val loss: 6.7240 +ptb - Train loss: 7.1995, Val loss: 7.2500 +lambada - Train loss: 5.1106, Val loss: 5.1115 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 3900: +Train loss: 5.0221, Val loss: 5.0129 +wikitext-103-v1 - Train loss: 6.6724, Val loss: 6.6887 +ptb - Train loss: 7.1831, Val loss: 7.2334 +lambada - Train loss: 5.0844, Val loss: 5.0931 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 4000: +Train loss: 4.9927, Val loss: 4.9926 +wikitext-103-v1 - Train loss: 6.6447, Val loss: 6.6501 +ptb - Train loss: 7.1884, Val loss: 7.2507 +lambada - Train loss: 5.0764, Val loss: 5.0833 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 4100: +Train loss: 4.9719, Val loss: 4.9709 +wikitext-103-v1 - Train loss: 6.6185, Val loss: 6.6290 +ptb - Train loss: 7.1638, Val loss: 7.2215 +lambada - Train loss: 5.0653, Val loss: 5.0691 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 4200: +Train loss: 4.9391, Val loss: 4.9436 +wikitext-103-v1 - Train loss: 6.5756, Val loss: 6.5829 +ptb - Train loss: 7.1333, Val loss: 7.1899 +lambada - Train loss: 5.0505, Val loss: 5.0537 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 4300: +Train loss: 4.9273, Val loss: 4.9181 +wikitext-103-v1 - Train loss: 6.5445, Val loss: 6.5667 +ptb - Train loss: 7.0927, Val loss: 7.1515 +lambada - Train loss: 5.0266, Val loss: 5.0396 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 4400: +Train loss: 4.9075, Val loss: 4.9041 +wikitext-103-v1 - Train loss: 6.5362, Val loss: 6.5482 +ptb - Train loss: 7.0501, Val loss: 7.1098 +lambada - Train loss: 5.0308, Val loss: 5.0362 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 4500: +Train loss: 4.8885, Val loss: 4.8835 +wikitext-103-v1 - Train loss: 6.4944, Val loss: 6.5105 +ptb - Train loss: 7.0164, Val loss: 7.0739 +lambada - Train loss: 5.0055, Val loss: 5.0135 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 4600: +Train loss: 4.8635, Val loss: 4.8658 +wikitext-103-v1 - Train loss: 6.4658, Val loss: 6.4804 +ptb - Train loss: 6.9843, Val loss: 7.0423 +lambada - Train loss: 5.0011, Val loss: 5.0147 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 4700: +Train loss: 4.8439, Val loss: 4.8423 +wikitext-103-v1 - Train loss: 6.4552, Val loss: 6.4618 +ptb - Train loss: 6.9312, Val loss: 6.9844 +lambada - Train loss: 4.9932, Val loss: 4.9966 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 4800: +Train loss: 4.8280, Val loss: 4.8263 +wikitext-103-v1 - Train loss: 6.4394, Val loss: 6.4524 +ptb - Train loss: 6.8651, Val loss: 6.9211 +lambada - Train loss: 4.9748, Val loss: 4.9823 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 4900: +Train loss: 4.8122, Val loss: 4.8116 +wikitext-103-v1 - Train loss: 6.3871, Val loss: 6.3982 +ptb - Train loss: 6.8441, Val loss: 6.9001 +lambada - Train loss: 4.9687, Val loss: 4.9716 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 5000: +Train loss: 4.7848, Val loss: 4.7902 +wikitext-103-v1 - Train loss: 6.3671, Val loss: 6.3759 +ptb - Train loss: 6.7393, Val loss: 6.7934 +lambada - Train loss: 4.9567, Val loss: 4.9686 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 5100: +Train loss: 4.7791, Val loss: 4.7704 +wikitext-103-v1 - Train loss: 6.3556, Val loss: 6.3512 +ptb - Train loss: 6.6708, Val loss: 6.7304 +lambada - Train loss: 4.9512, Val loss: 4.9605 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 5200: +Train loss: 4.7529, Val loss: 4.7421 +wikitext-103-v1 - Train loss: 6.2751, Val loss: 6.2951 +ptb - Train loss: 6.5643, Val loss: 6.6230 +lambada - Train loss: 4.9388, Val loss: 4.9489 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 5300: +Train loss: 4.7236, Val loss: 4.7266 +wikitext-103-v1 - Train loss: 6.2535, Val loss: 6.2627 +ptb - Train loss: 6.4647, Val loss: 6.5230 +lambada - Train loss: 4.9337, Val loss: 4.9406 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 5400: +Train loss: 4.7064, Val loss: 4.7117 +wikitext-103-v1 - Train loss: 6.1916, Val loss: 6.2009 +ptb - Train loss: 6.3551, Val loss: 6.4203 +lambada - Train loss: 4.9215, Val loss: 4.9291 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 5500: +Train loss: 4.6852, Val loss: 4.6876 +wikitext-103-v1 - Train loss: 6.1450, Val loss: 6.1506 +ptb - Train loss: 6.2498, Val loss: 6.3215 +lambada - Train loss: 4.9121, Val loss: 4.9227 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 5600: +Train loss: 4.6580, Val loss: 4.6628 +wikitext-103-v1 - Train loss: 6.1044, Val loss: 6.1034 +ptb - Train loss: 6.1805, Val loss: 6.2444 +lambada - Train loss: 4.8935, Val loss: 4.9037 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 5700: +Train loss: 4.6476, Val loss: 4.6494 +wikitext-103-v1 - Train loss: 6.0759, Val loss: 6.0710 +ptb - Train loss: 6.1559, Val loss: 6.2284 +lambada - Train loss: 4.8919, Val loss: 4.9006 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 5800: +Train loss: 4.6285, Val loss: 4.6302 +wikitext-103-v1 - Train loss: 6.0193, Val loss: 6.0208 +ptb - Train loss: 6.0677, Val loss: 6.1378 +lambada - Train loss: 4.8859, Val loss: 4.8888 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 5900: +Train loss: 4.6100, Val loss: 4.6091 +wikitext-103-v1 - Train loss: 5.9772, Val loss: 5.9983 +ptb - Train loss: 6.0338, Val loss: 6.1069 +lambada - Train loss: 4.8613, Val loss: 4.8656 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 6000: +Train loss: 4.5982, Val loss: 4.5997 +wikitext-103-v1 - Train loss: 5.9537, Val loss: 5.9566 +ptb - Train loss: 5.9820, Val loss: 6.0546 +lambada - Train loss: 4.8661, Val loss: 4.8714 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 6100: +Train loss: 4.5901, Val loss: 4.5864 +wikitext-103-v1 - Train loss: 5.9291, Val loss: 5.9231 +ptb - Train loss: 5.9331, Val loss: 6.0083 +lambada - Train loss: 4.8554, Val loss: 4.8599 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 6200: +Train loss: 4.5687, Val loss: 4.5737 +wikitext-103-v1 - Train loss: 5.9086, Val loss: 5.9128 +ptb - Train loss: 5.9349, Val loss: 6.0117 +lambada - Train loss: 4.8532, Val loss: 4.8611 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 6300: +Train loss: 4.5662, Val loss: 4.5616 +wikitext-103-v1 - Train loss: 5.8998, Val loss: 5.8930 +ptb - Train loss: 5.9115, Val loss: 5.9891 +lambada - Train loss: 4.8478, Val loss: 4.8527 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 6400: +Train loss: 4.5466, Val loss: 4.5473 +wikitext-103-v1 - Train loss: 5.8781, Val loss: 5.8757 +ptb - Train loss: 5.8813, Val loss: 5.9664 +lambada - Train loss: 4.8441, Val loss: 4.8530 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 6500: +Train loss: 4.5432, Val loss: 4.5314 +wikitext-103-v1 - Train loss: 5.8412, Val loss: 5.8352 +ptb - Train loss: 5.8475, Val loss: 5.9282 +lambada - Train loss: 4.8302, Val loss: 4.8388 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 6600: +Train loss: 4.5325, Val loss: 4.5316 +wikitext-103-v1 - Train loss: 5.8190, Val loss: 5.8262 +ptb - Train loss: 5.8501, Val loss: 5.9312 +lambada - Train loss: 4.8285, Val loss: 4.8363 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 6700: +Train loss: 4.5267, Val loss: 4.5185 +wikitext-103-v1 - Train loss: 5.8136, Val loss: 5.8122 +ptb - Train loss: 5.8342, Val loss: 5.9185 +lambada - Train loss: 4.8246, Val loss: 4.8289 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 6800: +Train loss: 4.5091, Val loss: 4.5100 +wikitext-103-v1 - Train loss: 5.7824, Val loss: 5.7766 +ptb - Train loss: 5.7875, Val loss: 5.8681 +lambada - Train loss: 4.8185, Val loss: 4.8268 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 6900: +Train loss: 4.5011, Val loss: 4.5029 +wikitext-103-v1 - Train loss: 5.7657, Val loss: 5.7764 +ptb - Train loss: 5.7694, Val loss: 5.8485 +lambada - Train loss: 4.8133, Val loss: 4.8231 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 7000: +Train loss: 4.4996, Val loss: 4.4911 +wikitext-103-v1 - Train loss: 5.7659, Val loss: 5.7678 +ptb - Train loss: 5.7745, Val loss: 5.8596 +lambada - Train loss: 4.8016, Val loss: 4.8054 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 7100: +Train loss: 4.4864, Val loss: 4.4873 +wikitext-103-v1 - Train loss: 5.7587, Val loss: 5.7529 +ptb - Train loss: 5.7630, Val loss: 5.8426 +lambada - Train loss: 4.7987, Val loss: 4.8048 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 7200: +Train loss: 4.4866, Val loss: 4.4813 +wikitext-103-v1 - Train loss: 5.7300, Val loss: 5.7410 +ptb - Train loss: 5.7308, Val loss: 5.8183 +lambada - Train loss: 4.7900, Val loss: 4.7973 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 7300: +Train loss: 4.4751, Val loss: 4.4757 +wikitext-103-v1 - Train loss: 5.7240, Val loss: 5.7239 +ptb - Train loss: 5.7143, Val loss: 5.7988 +lambada - Train loss: 4.7884, Val loss: 4.7963 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 7400: +Train loss: 4.4660, Val loss: 4.4701 +wikitext-103-v1 - Train loss: 5.7190, Val loss: 5.7234 +ptb - Train loss: 5.7230, Val loss: 5.8064 +lambada - Train loss: 4.7906, Val loss: 4.7927 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 7500: +Train loss: 4.4662, Val loss: 4.4631 +wikitext-103-v1 - Train loss: 5.7000, Val loss: 5.6982 +ptb - Train loss: 5.6939, Val loss: 5.7783 +lambada - Train loss: 4.7806, Val loss: 4.7902 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 7600: +Train loss: 4.4531, Val loss: 4.4558 +wikitext-103-v1 - Train loss: 5.7073, Val loss: 5.7100 +ptb - Train loss: 5.6947, Val loss: 5.7785 +lambada - Train loss: 4.7792, Val loss: 4.7886 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 7700: +Train loss: 4.4545, Val loss: 4.4483 +wikitext-103-v1 - Train loss: 5.6918, Val loss: 5.6860 +ptb - Train loss: 5.6976, Val loss: 5.7773 +lambada - Train loss: 4.7774, Val loss: 4.7862 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 7800: +Train loss: 4.4433, Val loss: 4.4411 +wikitext-103-v1 - Train loss: 5.6934, Val loss: 5.6878 +ptb - Train loss: 5.6769, Val loss: 5.7643 +lambada - Train loss: 4.7801, Val loss: 4.7903 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 7900: +Train loss: 4.4413, Val loss: 4.4416 +wikitext-103-v1 - Train loss: 5.6765, Val loss: 5.6695 +ptb - Train loss: 5.6713, Val loss: 5.7510 +lambada - Train loss: 4.7708, Val loss: 4.7763 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 8000: +Train loss: 4.4409, Val loss: 4.4394 +wikitext-103-v1 - Train loss: 5.6640, Val loss: 5.6717 +ptb - Train loss: 5.6699, Val loss: 5.7478 +lambada - Train loss: 4.7723, Val loss: 4.7815 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 8100: +Train loss: 4.4316, Val loss: 4.4325 +wikitext-103-v1 - Train loss: 5.6567, Val loss: 5.6603 +ptb - Train loss: 5.6456, Val loss: 5.7398 +lambada - Train loss: 4.7684, Val loss: 4.7764 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 8200: +Train loss: 4.4318, Val loss: 4.4267 +wikitext-103-v1 - Train loss: 5.6571, Val loss: 5.6542 +ptb - Train loss: 5.6420, Val loss: 5.7238 +lambada - Train loss: 4.7663, Val loss: 4.7713 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 8300: +Train loss: 4.4257, Val loss: 4.4290 +wikitext-103-v1 - Train loss: 5.6460, Val loss: 5.6427 +ptb - Train loss: 5.6228, Val loss: 5.7080 +lambada - Train loss: 4.7609, Val loss: 4.7697 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 8400: +Train loss: 4.4201, Val loss: 4.4196 +wikitext-103-v1 - Train loss: 5.6450, Val loss: 5.6505 +ptb - Train loss: 5.6354, Val loss: 5.7190 +lambada - Train loss: 4.7594, Val loss: 4.7659 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 8500: +Train loss: 4.4181, Val loss: 4.4210 +wikitext-103-v1 - Train loss: 5.6352, Val loss: 5.6355 +ptb - Train loss: 5.6282, Val loss: 5.7230 +lambada - Train loss: 4.7596, Val loss: 4.7683 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 8600: +Train loss: 4.4111, Val loss: 4.4076 +wikitext-103-v1 - Train loss: 5.6327, Val loss: 5.6289 +ptb - Train loss: 5.6210, Val loss: 5.7045 +lambada - Train loss: 4.7627, Val loss: 4.7660 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 8700: +Train loss: 4.4137, Val loss: 4.4089 +wikitext-103-v1 - Train loss: 5.6315, Val loss: 5.6285 +ptb - Train loss: 5.6101, Val loss: 5.7004 +lambada - Train loss: 4.7574, Val loss: 4.7659 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 8800: +Train loss: 4.4067, Val loss: 4.4042 +wikitext-103-v1 - Train loss: 5.6204, Val loss: 5.6155 +ptb - Train loss: 5.6047, Val loss: 5.6845 +lambada - Train loss: 4.7468, Val loss: 4.7530 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 8900: +Train loss: 4.4045, Val loss: 4.4018 +wikitext-103-v1 - Train loss: 5.6190, Val loss: 5.6236 +ptb - Train loss: 5.6094, Val loss: 5.6977 +lambada - Train loss: 4.7517, Val loss: 4.7613 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 9000: +Train loss: 4.4016, Val loss: 4.3918 +wikitext-103-v1 - Train loss: 5.6305, Val loss: 5.6134 +ptb - Train loss: 5.6094, Val loss: 5.6969 +lambada - Train loss: 4.7501, Val loss: 4.7563 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 9100: +Train loss: 4.3994, Val loss: 4.3975 +wikitext-103-v1 - Train loss: 5.6131, Val loss: 5.6137 +ptb - Train loss: 5.5875, Val loss: 5.6777 +lambada - Train loss: 4.7457, Val loss: 4.7547 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 9200: +Train loss: 4.3939, Val loss: 4.3967 +wikitext-103-v1 - Train loss: 5.5898, Val loss: 5.5952 +ptb - Train loss: 5.5814, Val loss: 5.6682 +lambada - Train loss: 4.7421, Val loss: 4.7498 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 9300: +Train loss: 4.3872, Val loss: 4.3954 +wikitext-103-v1 - Train loss: 5.6065, Val loss: 5.6058 +ptb - Train loss: 5.5795, Val loss: 5.6686 +lambada - Train loss: 4.7430, Val loss: 4.7525 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 9400: +Train loss: 4.3937, Val loss: 4.3859 +wikitext-103-v1 - Train loss: 5.6000, Val loss: 5.6071 +ptb - Train loss: 5.5799, Val loss: 5.6649 +lambada - Train loss: 4.7415, Val loss: 4.7467 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 9500: +Train loss: 4.3824, Val loss: 4.3850 +wikitext-103-v1 - Train loss: 5.5991, Val loss: 5.5934 +ptb - Train loss: 5.5730, Val loss: 5.6605 +lambada - Train loss: 4.7407, Val loss: 4.7508 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 9600: +Train loss: 4.3812, Val loss: 4.3772 +wikitext-103-v1 - Train loss: 5.5959, Val loss: 5.5834 +ptb - Train loss: 5.5622, Val loss: 5.6490 +lambada - Train loss: 4.7418, Val loss: 4.7453 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 9700: +Train loss: 4.3786, Val loss: 4.3852 +wikitext-103-v1 - Train loss: 5.5881, Val loss: 5.5801 +ptb - Train loss: 5.5546, Val loss: 5.6461 +lambada - Train loss: 4.7377, Val loss: 4.7418 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt + +Step 9800: +Train loss: 4.3762, Val loss: 4.3777 +wikitext-103-v1 - Train loss: 5.5907, Val loss: 5.5761 +ptb - Train loss: 5.5620, Val loss: 5.6461 +lambada - Train loss: 4.7338, Val loss: 4.7414 +Saving checkpoint to out/ckpt_polynomial_chebyshev_default.pt diff --git a/wandb/run-20240927_021423-clesd0p8/files/requirements.txt b/wandb/run-20240927_021423-clesd0p8/files/requirements.txt new file mode 100644 index 0000000000000000000000000000000000000000..3cd45e0832b399f278ffb005f62b438d1ccf128c --- /dev/null +++ b/wandb/run-20240927_021423-clesd0p8/files/requirements.txt @@ -0,0 +1,192 @@ +pytz==2024.2 +xxhash==3.5.0 +tzdata==2024.2 +tqdm==4.66.5 +smmap==5.0.1 +setproctitle==1.3.3 +sentry-sdk==2.14.0 +scipy==1.14.1 +requests==2.32.3 +regex==2024.9.11 +pyarrow==17.0.0 +protobuf==5.28.2 +multidict==6.1.0 +frozenlist==1.4.1 +einops==0.8.0 +docker-pycreds==0.4.0 +dill==0.3.8 +click==8.1.7 +async-timeout==4.0.3 +aiohappyeyeballs==2.4.0 +yarl==1.12.1 +tiktoken==0.7.0 +pandas==2.2.3 +multiprocess==0.70.16 +huggingface-hub==0.25.1 +gitdb==4.0.11 +aiosignal==1.3.1 +GitPython==3.1.43 +aiohttp==3.10.6 +wandb==0.18.1 +flash-attn==2.6.3 +datasets==3.0.0 +pluggy==1.5.0 +iniconfig==2.0.0 +pytest==8.3.3 +nbzip==0.1.0 +jupyter-console==6.6.3 +bash_kernel==0.9.3 +jupyter-http-over-ws==0.0.8 +jupyter==1.1.1 +entrypoints==0.4 +jupyter_client==7.4.9 +nbclassic==1.0.0 +notebook==6.5.5 +pyzmq==24.0.1 +Babel==2.14.0 +PyYAML==6.0.1 +Send2Trash==1.8.2 +anyio==4.2.0 +argon2-cffi==23.1.0 +argon2-cffi-bindings==21.2.0 +arrow==1.3.0 +asttokens==2.4.1 +async-lru==2.0.4 +attrs==23.2.0 +beautifulsoup4==4.12.3 +bleach==6.1.0 +cffi==1.16.0 +comm==0.2.1 +debugpy==1.8.0 +decorator==5.1.1 +defusedxml==0.7.1 +exceptiongroup==1.2.0 +executing==2.0.1 +fastjsonschema==2.19.1 +fqdn==1.5.1 +h11==0.14.0 +httpcore==1.0.2 +httpx==0.26.0 +ipykernel==6.29.0 +ipython==8.21.0 +ipython-genutils==0.2.0 +ipywidgets==8.1.1 +isoduration==20.11.0 +jedi==0.19.1 +json5==0.9.14 +jsonpointer==2.4 +jsonschema==4.21.1 +jsonschema-specifications==2023.12.1 +jupyter-archive==3.4.0 +jupyter_contrib_core==0.4.2 +jupyter_contrib_nbextensions==0.7.0 +jupyter_core==5.7.1 +jupyter-events==0.9.0 +jupyter-highlight-selected-word==0.2.0 +jupyter-lsp==2.2.2 +jupyter-nbextensions-configurator==0.6.3 +jupyter_server==2.12.5 +jupyter_server_terminals==0.5.2 +jupyterlab==4.1.0 +jupyterlab_pygments==0.3.0 +jupyterlab_server==2.25.2 +jupyterlab-widgets==3.0.9 +lxml==5.1.0 +matplotlib-inline==0.1.6 +mistune==3.0.2 +nbclient==0.9.0 +nbconvert==7.14.2 +nbformat==5.9.2 +nest-asyncio==1.6.0 +notebook_shim==0.2.3 +overrides==7.7.0 +packaging==23.2 +pandocfilters==1.5.1 +parso==0.8.3 +pexpect==4.9.0 +platformdirs==4.2.0 +prometheus-client==0.19.0 +prompt-toolkit==3.0.43 +psutil==5.9.8 +ptyprocess==0.7.0 +pure-eval==0.2.2 +pycparser==2.21 +Pygments==2.17.2 +python-dateutil==2.8.2 +python-json-logger==2.0.7 +referencing==0.33.0 +rfc3339-validator==0.1.4 +rfc3986-validator==0.1.1 +rpds-py==0.17.1 +sniffio==1.3.0 +soupsieve==2.5 +stack-data==0.6.3 +terminado==0.18.0 +tinycss2==1.2.1 +tomli==2.0.1 +tornado==6.4 +traitlets==5.14.1 +types-python-dateutil==2.8.19.20240106 +uri-template==1.3.0 +wcwidth==0.2.13 +webcolors==1.13 +webencodings==0.5.1 +websocket-client==1.7.0 +widgetsnbextension==4.0.9 +Jinja2==3.1.3 +MarkupSafe==2.1.5 +certifi==2024.2.2 +charset-normalizer==3.3.2 +filelock==3.13.1 +fsspec==2024.2.0 +idna==3.6 +mpmath==1.3.0 +networkx==3.2.1 +numpy==1.26.3 +nvidia-cublas-cu12==12.1.3.1 +nvidia-cuda-cupti-cu12==12.1.105 +nvidia-cuda-nvrtc-cu12==12.1.105 +nvidia-cuda-runtime-cu12==12.1.105 +nvidia-cudnn-cu12==8.9.2.26 +nvidia-cufft-cu12==11.0.2.54 +nvidia-curand-cu12==10.3.2.106 +nvidia-cusolver-cu12==11.4.5.107 +nvidia-cusparse-cu12==12.1.0.106 +nvidia-nccl-cu12==2.19.3 +nvidia-nvjitlink-cu12==12.3.101 +nvidia-nvtx-cu12==12.1.105 +pillow==10.2.0 +sympy==1.12 +torch==2.2.0 +torchaudio==2.2.0 +torchvision==0.17.0 +triton==2.2.0 +typing_extensions==4.9.0 +urllib3==2.2.0 +pip==24.0 +setuptools==69.0.3 +wheel==0.42.0 +PyGObject==3.42.1 +PyJWT==2.3.0 +SecretStorage==3.3.1 +blinker==1.4 +cryptography==3.4.8 +dbus-python==1.2.18 +distro==1.7.0 +httplib2==0.20.2 +importlib-metadata==4.6.4 +jeepney==0.7.1 +keyring==23.5.0 +launchpadlib==1.10.16 +lazr.restfulclient==0.14.4 +lazr.uri==1.0.6 +more-itertools==8.10.0 +oauthlib==3.2.0 +pyparsing==2.4.7 +python-apt==2.4.0+ubuntu2 +six==1.16.0 +wadllib==1.3.6 +zipp==1.0.0 +setuptools==59.6.0 +wheel==0.37.1 +pip==22.0.2 diff --git a/wandb/run-20240927_021423-clesd0p8/logs/debug-core.log b/wandb/run-20240927_021423-clesd0p8/logs/debug-core.log new file mode 100644 index 0000000000000000000000000000000000000000..ff802f56855efa9bd28215520485d0d8bd5268a4 --- /dev/null +++ b/wandb/run-20240927_021423-clesd0p8/logs/debug-core.log @@ -0,0 +1,12 @@ +{"time":"2024-09-26T19:28:31.323728841Z","level":"INFO","msg":"started logging, with flags","port-filename":"/tmp/tmp9l51n5u0/port-7447.txt","pid":7447,"debug":false,"disable-analytics":false} +{"time":"2024-09-26T19:28:31.324125995Z","level":"INFO","msg":"FeatureState","shutdownOnParentExitEnabled":false} +{"time":"2024-09-26T19:28:31.324781916Z","level":"INFO","msg":"Will exit if parent process dies.","ppid":7447} +{"time":"2024-09-26T19:28:31.324772272Z","level":"INFO","msg":"server is running","addr":{"IP":"127.0.0.1","Port":44021,"Zone":""}} +{"time":"2024-09-26T19:28:31.519883511Z","level":"INFO","msg":"created new connection","id":"127.0.0.1:49154"} +{"time":"2024-09-26T19:28:31.945023432Z","level":"INFO","msg":"connection init received","streamId":"378lr5yg","id":"127.0.0.1:49154"} +{"time":"2024-09-26T19:28:31.945242119Z","level":"ERROR","msg":"error creating symlink","error":"symlink /root/.cache/wandb/logs/core-debug-20240926_192831.log /root/wandb/run-20240926_192831-378lr5yg/logs/debug-core.log: file exists"} +{"time":"2024-09-26T19:28:31.947286776Z","level":"INFO","msg":"connection init completed","streamId":"378lr5yg","id":"127.0.0.1:49154"} +{"time":"2024-09-27T02:14:23.053318256Z","level":"INFO","msg":"handle finish received","streamId":"378lr5yg","id":"127.0.0.1:49154"} +{"time":"2024-09-27T02:14:23.674128558Z","level":"INFO","msg":"connection init received","streamId":"clesd0p8","id":"127.0.0.1:49154"} +{"time":"2024-09-27T02:14:23.674521506Z","level":"ERROR","msg":"error creating symlink","error":"symlink /root/.cache/wandb/logs/core-debug-20240926_192831.log /root/wandb/run-20240927_021423-clesd0p8/logs/debug-core.log: file exists"} +{"time":"2024-09-27T02:14:23.677325569Z","level":"INFO","msg":"connection init completed","streamId":"clesd0p8","id":"127.0.0.1:49154"} diff --git a/wandb/run-20240927_021423-clesd0p8/logs/debug-internal.log b/wandb/run-20240927_021423-clesd0p8/logs/debug-internal.log new file mode 100644 index 0000000000000000000000000000000000000000..c5ce96892f14a0bc71453635e8742bc7def30200 --- /dev/null +++ b/wandb/run-20240927_021423-clesd0p8/logs/debug-internal.log @@ -0,0 +1,11 @@ +{"time":"2024-09-27T02:14:23.674435738Z","level":"INFO","msg":"using version","core version":"0.18.1"} +{"time":"2024-09-27T02:14:23.674480194Z","level":"INFO","msg":"created symlink","path":"/root/wandb/run-20240927_021423-clesd0p8/logs/debug-core.log"} +{"time":"2024-09-27T02:14:23.674562387Z","level":"INFO","msg":"using version","core version":"0.18.1"} +{"time":"2024-09-27T02:14:23.674572973Z","level":"INFO","msg":"created symlink","path":"/root/wandb/run-20240927_021423-clesd0p8/logs/debug-core.log"} +{"time":"2024-09-27T02:14:23.677276676Z","level":"INFO","msg":"created new stream","id":"clesd0p8"} +{"time":"2024-09-27T02:14:23.677314322Z","level":"INFO","msg":"stream: started","id":"clesd0p8"} +{"time":"2024-09-27T02:14:23.677345579Z","level":"INFO","msg":"writer: Do: started","stream_id":{"value":"clesd0p8"}} +{"time":"2024-09-27T02:14:23.67738666Z","level":"INFO","msg":"handler: started","stream_id":{"value":"clesd0p8"}} +{"time":"2024-09-27T02:14:23.677354292Z","level":"INFO","msg":"sender: started","stream_id":{"value":"clesd0p8"}} +{"time":"2024-09-27T02:14:24.251734249Z","level":"INFO","msg":"wandb-core","!BADKEY":null} +{"time":"2024-09-27T02:14:24.25259794Z","level":"INFO","msg":"Starting system monitor"} diff --git a/wandb/run-20240927_021423-clesd0p8/logs/debug.log b/wandb/run-20240927_021423-clesd0p8/logs/debug.log new file mode 100644 index 0000000000000000000000000000000000000000..3b9463c86255a3a54241fc9bc19ef2d9236a2134 --- /dev/null +++ b/wandb/run-20240927_021423-clesd0p8/logs/debug.log @@ -0,0 +1,26 @@ +2024-09-27 02:14:23,672 INFO MainThread:7447 [wandb_setup.py:_flush():77] Current SDK version is 0.18.1 +2024-09-27 02:14:23,672 INFO MainThread:7447 [wandb_setup.py:_flush():77] Configure stats pid to 7447 +2024-09-27 02:14:23,672 INFO MainThread:7447 [wandb_setup.py:_flush():77] Loading settings from /root/.config/wandb/settings +2024-09-27 02:14:23,672 INFO MainThread:7447 [wandb_setup.py:_flush():77] Loading settings from /root/wandb/settings +2024-09-27 02:14:23,672 INFO MainThread:7447 [wandb_setup.py:_flush():77] Loading settings from environment variables: {} +2024-09-27 02:14:23,672 INFO MainThread:7447 [wandb_setup.py:_flush():77] Applying setup settings: {'mode': None, '_disable_service': None} +2024-09-27 02:14:23,672 INFO MainThread:7447 [wandb_setup.py:_flush():77] Inferring run settings from compute environment: {'program_relpath': 'train.py', 'program_abspath': '/root/train.py', 'program': '/root/train.py'} +2024-09-27 02:14:23,672 INFO MainThread:7447 [wandb_setup.py:_flush():77] Applying login settings: {} +2024-09-27 02:14:23,672 INFO MainThread:7447 [wandb_init.py:_log_setup():532] Logging user logs to /root/wandb/run-20240927_021423-clesd0p8/logs/debug.log +2024-09-27 02:14:23,672 INFO MainThread:7447 [wandb_init.py:_log_setup():533] Logging internal logs to /root/wandb/run-20240927_021423-clesd0p8/logs/debug-internal.log +2024-09-27 02:14:23,672 INFO MainThread:7447 [wandb_init.py:init():616] calling init triggers +2024-09-27 02:14:23,672 INFO MainThread:7447 [wandb_init.py:init():623] wandb.init called with sweep_config: {} +config: {'out_dir': 'out', 'eval_interval': 100, 'log_interval': 1, 'eval_iters': 100, 'eval_only': False, 'always_save_checkpoint': True, 'init_from': 'scratch', 'checkpoint_path': '', 'wandb_log': True, 'wandb_project': 'gpt2_positional_encodings_100B', 'wandb_run_name': 'experiment', 'dataset': 'fineweb', 'gradient_accumulation_steps': 40, 'batch_size': 120, 'block_size': 512, 'n_layer': 4, 'n_head': 4, 'n_embd': 256, 'dropout': 0.0, 'bias': False, 'learning_rate': 0.0006, 'max_iters': 10000, 'weight_decay': 0.1, 'beta1': 0.9, 'beta2': 0.95, 'grad_clip': 1.0, 'decay_lr': True, 'warmup_iters': 100, 'lr_decay_iters': 10000, 'min_lr': 6e-05, 'backend': 'nccl', 'device': 'cuda', 'dtype': 'bfloat16', 'compile': True, 'embedding_types': ['polynomial_legendre', 'polynomial_chebyshev', 'random_fourier', 'wavelet'], 'attention_types': ['default'], 'collect_attention_patterns': False, 'collect_activations': False, 'eval_datasets': ['wikitext-103-v1', 'ptb', 'lambada'], 'seed': 1337} +2024-09-27 02:14:23,672 INFO MainThread:7447 [wandb_init.py:init():666] starting backend +2024-09-27 02:14:23,672 INFO MainThread:7447 [wandb_init.py:init():670] setting up manager +2024-09-27 02:14:23,673 INFO MainThread:7447 [backend.py:_multiprocessing_setup():105] multiprocessing start_methods=fork,spawn,forkserver, using: spawn +2024-09-27 02:14:23,674 INFO MainThread:7447 [wandb_init.py:init():678] backend started and connected +2024-09-27 02:14:23,677 INFO MainThread:7447 [wandb_init.py:init():773] updated telemetry +2024-09-27 02:14:23,677 INFO MainThread:7447 [wandb_init.py:init():806] communicating run to backend with 90.0 second timeout +2024-09-27 02:14:24,248 INFO MainThread:7447 [wandb_init.py:init():857] starting run threads in backend +2024-09-27 02:14:24,379 INFO MainThread:7447 [wandb_run.py:_console_start():2459] atexit reg +2024-09-27 02:14:24,379 INFO MainThread:7447 [wandb_run.py:_redirect():2307] redirect: wrap_raw +2024-09-27 02:14:24,380 INFO MainThread:7447 [wandb_run.py:_redirect():2372] Wrapping output streams. +2024-09-27 02:14:24,380 INFO MainThread:7447 [wandb_run.py:_redirect():2397] Redirects installed. +2024-09-27 02:14:24,380 INFO MainThread:7447 [wandb_init.py:init():900] run started, returning control to user process +2024-09-27 08:54:14,438 WARNING MsgRouterThr:7447 [router.py:message_loop():77] message_loop has been closed