Question about Lithe

20 views
Skip to first unread message

陈宗志

unread,
Jun 11, 2015, 9:44:10 AM6/11/15
to lithe...@googlegroups.com
Hi klueska

I am interested in Lithe. I have some question about the theory

1. can you tell me the advantage of Lithe.

2. the relation of lithe and libprocess. I find libprocess is a Reactor model. libprocess is same as Erlang.
When we start libprocess, we will start 8 OS thread, the the process in libprocess is just a task in thread.
Is it lithe do the same job as libprocess? Or lithe optimize the model


Thanks


----------------------------------------
baotiao
 
Blog: baotiao.github.io

Kevin Klues

unread,
Sep 2, 2015, 1:54:15 PM9/2/15
to lithe-users
Hello!  Sorry about the late reply.  I was busy finishing up my dissertation the past few months.

Short answers:
1)  Lithe allows an application to use multiple user-level schedulers inside a single application. Without something like Lithe, combining schedulers from multiple libraries can cause performance problems if those schedulers interfere with one another by obliviously using the same physical cores. Such problems arise, for example, when leveraging code developed by third-party developers from different frameworks or languages (e.g. OpenMP, TBB, or Go).  Without Lithe, each library will attempt to multiplex its tasks on all of the cores it sees in the system, ultimately interfering with other libraries.  With Lithe, cores are explicitly shared among each library to avoid interference.

2) Libprocess is an actor style message-passing programming model.  It is compatible, but complementary to Lithe.  Lithe promotes the use of mutiple user-level schedulers in a single application, where libprocess could be one of those schedulers.

The long answer to your questions lies in chapter 3 of my dissertation.
Reply all
Reply to author
Forward
0 new messages