Re: blip 0.5

2010-11-18 Thread Fawzi Mohamed


On 18-nov-10, at 01:49, klickverbot wrote:


On 11/18/10 1:12 AM, Bill Baxter wrote:

Nice work!  Is it for D2 or D1?  Or both?
--bb


I hope you don't mind me answering, Fawzi:


sure I don't mind, actually I hope more people will get involved :)


Currently, it's D1 only.


yes, indeed, I have considered D2, and there are things that I like  
about it, but as of now it is still too early for me to switch to it.
- I am not too keen on fighting again will obscure threading bugs (but  
Sean is very helpfully considering my changes and adding them to  
druntime, so that might go well).

- I need a stable 64 bit compiler, that is coming, but is not there yet
- I feel that in general if I delay a bit my job will just get easier
- D2 will need porting and testing, now I would rather use my library

In any case that is a good topic, so I posted about it in digitalmars-d

Fawzi



Re: blip 0.5

2010-11-18 Thread Lars T. Kyllingstad
On Wed, 17 Nov 2010 23:42:49 +0100, Fawzi Mohamed wrote:

 I am happy to announce blip 0.5
 
   http://dsource.org/projects/blip
 
 why 0.5? because it works for me, but hopefully it will work for others
 too, and 1.0 will be a release with more contributors...
 
 Blip is a library that offers
 
   * N-dimensional arrays (blip.narray) that have a nice interface to
 lapack (that leverages the wrappers of baxissimo)
   * 2,3 and 4D vectors, matrixes and quaternions from the omg library
 of h3r3tic
   * multidimensional arrays, with nice to use wrappers to blas/lapack *
   a testing framework that can cope both with combinatorial and
 random testing
 this means that you can define an environment (be it struct or
 class, maybe even templatized)
 and then define generators that create one such environment (see
 blip.rtest.BasicGenerators)
 then you can define testing functions that will receive newly
 generated environments and do the tests
   * serialization (blip.serialization) that supports both json format,
 that can be used also for input files and an
 efficient binary representation
   * MPI parallelization built on the top of mpi, but abstracting it
 away (so that a pure tcp implementation is possible),
 for tightly coupled parallelization
   * a Distribued Objects framework that does rpc via proxies
 (blip.parallel.rpc)
   * a simple socket library that can be used to connect external
 programs, even if written in fortran or C (for a weak parallel coupling)
   * a coherent and efficient io abstraction
 
 But what might be most interesting is.
 
   * SMP parallelization (blip.parallel.smp) a numa aware very flexible
 framework
 
 a parallelization framework that can cope well with both thread like and
 data like parallelism, integrated with libev to offer efficient socket
 i/o and much more.
 
 An overview of blip is given in
   http://dsource.org/projects/blip/wiki/BlipOverview
 The parallelization is discussed in
   http://dsource.org/projects/blip/wiki/ParallelizationConcepts
 finally to install it see
   http://dsource.org/projects/blip/wiki/GettingStarted
 
 enjoy
 
 Fawzi

This looks pretty good.  Too bad it's only for D1.  I'll be keeping an 
eye out for a D2 version in the future. ;)

-Lars


Re: blip 0.5

2010-11-17 Thread Bill Baxter
Nice work!  Is it for D2 or D1?  Or both?

--bb

On Wed, Nov 17, 2010 at 2:42 PM, Fawzi Mohamed fa...@gmx.ch wrote:

 I am happy to announce blip 0.5

http://dsource.org/projects/blip

 why 0.5? because it works for me, but hopefully it will work for others
 too, and 1.0 will be a release with more contributors...

 Blip is a library that offers

  * N-dimensional arrays (blip.narray) that have a nice interface to lapack
 (that leverages the wrappers of baxissimo)
  * 2,3 and 4D vectors, matrixes and quaternions from the omg library of
 h3r3tic
  * multidimensional arrays, with nice to use wrappers to blas/lapack
  * a testing framework that can cope both with combinatorial and random
 testing
   this means that you can define an environment (be it struct or class,
 maybe even templatized)
   and then define generators that create one such environment (see
 blip.rtest.BasicGenerators)
   then you can define testing functions that will receive newly generated
 environments and do the tests
  * serialization (blip.serialization) that supports both json format, that
 can be used also for input files and an
   efficient binary representation
  * MPI parallelization built on the top of mpi, but abstracting it away (so
 that a pure tcp implementation is possible),
   for tightly coupled parallelization
  * a Distribued Objects framework that does rpc via proxies
 (blip.parallel.rpc)
  * a simple socket library that can be used to connect external programs,
 even if written in fortran or C (for a weak parallel coupling)
  * a coherent and efficient io abstraction

 But what might be most interesting is.

  * SMP parallelization (blip.parallel.smp) a numa aware very flexible
 framework

 a parallelization framework that can cope well with both thread like and
 data like parallelism, integrated with libev
 to offer efficient socket i/o and much more.

 An overview of blip is given in
http://dsource.org/projects/blip/wiki/BlipOverview
 The parallelization is discussed in
http://dsource.org/projects/blip/wiki/ParallelizationConcepts
 finally to install it see
http://dsource.org/projects/blip/wiki/GettingStarted

 enjoy

 Fawzi



Re: blip 0.5

2010-11-17 Thread klickverbot

On 11/18/10 1:12 AM, Bill Baxter wrote:

Nice work!  Is it for D2 or D1?  Or both?
--bb


I hope you don't mind me answering, Fawzi:
Currently, it's D1 only.