[ANN] Tiamat: Automatic parallelism across multiple machines

J

James M. Lawrence

= Tiamat

== Summary

Automatic parallelism across multiple cores and machines: a plugin for
Pure.

== Synopsis

require 'tiamat/autoconfig'
require 'benchmark'

mod = Pure.define do
def total(left, right)
left + right
end

def left
(1..500_000).inject(0) { |acc, n| acc + n }
end

def right
(1..500_000).inject(0) { |acc, n| acc + n }
end
end

# compute using two threads
puts Benchmark.realtime { mod.compute(2).total } # =>
0.4432079792022705

# compute using two local Ruby interpreters
Tiamat.open_local(2) {
puts Benchmark.realtime { mod.compute.total } # =>
0.2420041561126709
}

== Description

Tiamat is a worker plugin for the pure functional package. It links
Ruby interpreters together with DRb, forming a back-end for Pure's
parallelizing engine.

== Install

% gem install tiamat

Or for the (non-gem) .tgz package,

% ruby install.rb [--uninstall]

== Links

* Pure: http://purefunctional.rubyforge.org

* Documentation: http://tiamat.rubyforge.org
* Download: http://rubyforge.org/frs/?group_id=9145
* Rubyforge home: http://rubyforge.org/projects/tiamat
* Repository: http://github.com/quix/tiamat

== Author

* James M. Lawrence <[email protected]>
 
R

Rajinder Yadav

= Tiamat
== Author

* James M. Lawrence <[email protected]>

James this is wicked, love what you're doing, although I have no idea
on how to use it yet =)

Does Tiamat work on top of Pure? Where should I start?

--
Kind Regards,
Rajinder Yadav

http://DevMentor.org

Do Good! - Share Freely, Enrich and Empower people to Transform their lives.
 
J

James M. Lawrence

Rajinder said:
James this is wicked, love what you're doing, although I have no idea
on how to use it yet =)

Does Tiamat work on top of Pure? Where should I start?

Yes, Tiamat is a back-end for Pure. The first step is to install it and
then run through the examples in the readmes. Have you tried that?
 
R

Rajinder Yadav

James said:
Yes, Tiamat is a back-end for Pure. The first step is to install it and
then run through the examples in the readmes. Have you tried that?

I've install pure (0.2.0), however I get the following error when I try to run
the 1st example from the site

irb(main):001:0> require 'pure/dsl'
LoadError: no such file to load -- pure/dsl
from (irb):1:in `require'
from (irb):1

--
Kind Regards,
Rajinder Yadav

http://DevMentor.org

Do Good! - Share Freely, Enrich and Empower people to Transform their lives.
 
J

James M. Lawrence

Rajinder said:
I've install pure (0.2.0), however I get the following error when I try
to run
the 1st example from the site

irb(main):001:0> require 'pure/dsl'
LoadError: no such file to load -- pure/dsl
from (irb):1:in `require'
from (irb):1

If you installed the gem, did you require 'rubygems' or set the RUBYOPT
environment variable to '-rrubygems'?
 
R

Rajinder Yadav

James said:
If you installed the gem, did you require 'rubygems' or set the RUBYOPT
environment variable to '-rrubygems'?

Hi James, that was my problem, thank you.

I will play around with pure, it looks very promising even though I don't have
immediate use for it now I think it's well worth getting to know.

--
Kind Regards,
Rajinder Yadav

http://DevMentor.org

Do Good! - Share Freely, Enrich and Empower people to Transform their lives.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,769
Messages
2,569,580
Members
45,055
Latest member
SlimSparkKetoACVReview

Latest Threads

Top