[Nix-dev] octave and atlas, tuning for performance, which isthe nix way here?

Roggenkamp,Steve roggenks at oclc.org
Wed Oct 22 22:42:37 CEST 2008


Then we're back to the morass with typical package management systems.
The trouble comes with defining what "well-contained" means.

What you really want is an application interface with well-defined
semantics.  Then, in theory, any package that implemented the interface
conforming to the semantics should be interchangeable with any other
package implementing the same.  The trouble with this is that we do not
have good means to strictly define the semantics of software execution,
other than by running it.

The Nix package management system uses the generated hashes to insure
compatibility and repeatability.  It makes a lot of sense.

The problem with it is that as you go lower in the software stack and
change things, it requires you to rebuild more packages.  Inconvenient,
but it insures you get the same behavior.  It seems to me the trick
should be to arrange your processes to minimize the changes to the lower
levels of your software stack.

Steve

-----Original Message-----
From: nix-dev-bounces at cs.uu.nl [mailto:nix-dev-bounces at cs.uu.nl] On
Behalf Of Isaac Dupree
Sent: Wednesday, October 22, 2008 4:10 PM
To: Marc Weber; nix-dev at cs.uu.nl
Subject: Re: [Nix-dev] octave and atlas, tuning for performance, which
isthe nix way here?

Marc Weber wrote:
>> There is still an issue in this example because if you are optimizing

>> a program used by openoffice, your distributed build will not be able

>> to use your optimized programs due to different dependency hashes.
>> The same problem arises with programs which have Atlas as a 
>> dependency.
> 
> Sure if oo depends on atlas.. then have some cups of tea till oo will 
> be built.. You'll never get binaries then.

what if we use the concept of dynamically-linked libraries in a
well-contained way?  Say that everyone *compiles* against some standard
version of atlas, say, to get a standard openoffice; but then you can
get a modified combination that consists of the standard openoffice
modified to access the re-compiled version of atlas at runtime.  (I
don't know how practical that is to implement, but it seems something
like that "ought to" work...)

-Isaac
_______________________________________________
nix-dev mailing list
nix-dev at cs.uu.nl
https://mail.cs.uu.nl/mailman/listinfo/nix-dev





More information about the nix-dev mailing list