Skip to content

Releases: project-rig/rig

v0.14.0

02 Mar 14:07
Compare
Choose a tag to compare
v0.14.0 Pre-release
Pre-release
Improvements
------------

The Ordered Covering routing table minimisation algorithm has been improved
slightly (hopefully) resulting in better compression.

Bugfix
------

Minor bugfix in the test suite which make one test deterministic.

v0.13.4

02 Mar 09:06
Compare
Choose a tag to compare
v0.13.4 Pre-release
Pre-release
Bugfixes
--------

* All geometry functions now return native Python integer types rather than
  Numpy look-alikes.
* Fix NER router returning Links objects rather than Routes objects when A* is
  used to route-around faults.

v0.13.3

25 Feb 16:31
Compare
Choose a tag to compare
v0.13.3 Pre-release
Pre-release
Bugfix: fixes SameChipConstraints which have more than one overlapping vertex.

v0.13.2

05 Feb 11:42
Compare
Choose a tag to compare
v0.13.2 Pre-release
Pre-release
Adds a get_location_and_length method to BitField which returns the size and
position of allocated bit fields. This removes the need to infer this
information from the field's mask.

v0.13.1

02 Feb 15:00
Compare
Choose a tag to compare
v0.13.1 Pre-release
Pre-release
Bugfix:

* Add __ne__ methods to objects with __eq__ methods to fix Python 2.7
  compatibility.
* Add missing "install.rst" documentation file.

v0.13.0

28 Jan 10:37
Compare
Choose a tag to compare
v0.13.0 Pre-release
Pre-release
This release introduces a much faster C implementation of the SA placer's
kernel which is 50-150x faster than the original Python based kernel. To use
this kernel, the `rig_c_sa` package must also be installed. If rig_c_sa is not
installed, the (much slower) Python based kernel will be used instead.

Note: Since installing the `rig_c_sa` package requires a working C compiler
under Linux, it is not a strict Rig dependency and thus is not installed
automatically.

v0.12.2

15 Jan 11:39
Compare
Choose a tag to compare
v0.12.2 Pre-release
Pre-release
Fixes a bug in expand_entry which would have led to the loss of source
information in expanded entries.

v0.12.1

14 Jan 08:37
Compare
Choose a tag to compare
v0.12.1 Pre-release
Pre-release
Bugfixes
========

Previously, if the ordered covering routing table minimisation algorithm fails
to meet the routing table length target, default routing would not be tried as
the last resort. This has now been fixed.

v0.12.0

13 Jan 08:34
Compare
Choose a tag to compare
v0.12.0 Pre-release
Pre-release
New Routing Table Tools
=======================

The routing_table module has been significantly expanded and now includes:

* The "ordered covering" algorithm for minimising multicast routing tables.
* A selection of other utility functions for comparing and manipulating routing
  tables.
* The RoutingTableEntry tuple now contains an optional "sources" field to
  indicate which ports packets may arrive at a router. This allows table
  minimisation algorithms to make more informed choices about when default
  routing can and cannot be used.
* Various documentation improvements.

Place-and-Route Wrapper Now Minimises Routing Entries When Required
===================================================================

As supported by the tools above. A new argument has been added which allows the
selection of specific minimisation algorithms to use, if requireed. No changes
should be required for most user's applications.

New field in ChipInfo/SystemInfo
================================

A new largest_free_rtr_mc_block field has been added to the ChipInfo tuple
which indicates how many routing entries are available on each chip. To support
this a new SC&MP release is included.

The ChipInfo constructor now also features sensible default values for each of
its fields to ease testing and ensure the above change is backward-compatible.

Deprecation of `build_routing_tables`
=====================================

The rig.place_and_rotue.build_routing_tables utility function is now deprecated
in favour of rig.routing_table.routing_tree_to_tables and, if desired,
rig.routing_table.minimise_tables.

v0.11.1: v0.11.0

17 Dec 09:39
Compare
Choose a tag to compare
v0.11.1: v0.11.0 Pre-release
Pre-release
Fix omitted Sphinx documentation for SystemInfo and ChipInfo objects.