jbjnr has quit [Read error: Connection reset by peer]
jaafar has quit [Ping timeout: 256 seconds]
Abhishek09 has joined #ste||ar
Abhishek09 has quit [Remote host closed the connection]
Aman59 has joined #ste||ar
diehlpk has joined #ste||ar
diehlpk has quit [Ping timeout: 256 seconds]
Aman59 has quit [Remote host closed the connection]
hkaiser has joined #ste||ar
mcopik has joined #ste||ar
mcopik has quit [Client Quit]
hkaiser has quit [Ping timeout: 256 seconds]
hkaiser has joined #ste||ar
hkaiser has quit [Ping timeout: 256 seconds]
hkaiser has joined #ste||ar
gonidelis has joined #ste||ar
jaafar has joined #ste||ar
hkaiser has quit [Ping timeout: 240 seconds]
nikunj has joined #ste||ar
MatrixBridge has joined #ste||ar
MatrixBridge has left #ste||ar ["User left"]
hkaiser has joined #ste||ar
nikunj has quit [Ping timeout: 268 seconds]
nikunj has joined #ste||ar
<gonidelis>
day #2 of familiarizing myself with HPX and I must say that I am quite thrilled! Just a question though: _A locality inHPXdescribes a synchronous domain of execution, or the domain of bounded upper response time. This normally is just a single node in a cluster or a NUMA domain in a SMP machine._
<gonidelis>
taken from documentation
<gonidelis>
Could someone help me understand what a locality is? I don't think I get it yet...
<gonidelis>
(I must admit, terminology is quite complex to fully comprehend...)
<gonidelis>
I get that it's a crucial step in order to learn HPX though
<zao>
It kind of corresponds to a HPX process in a distributed system.
<zao>
You can run HPX in a mode where you have a single locality and no interprocess communication, just running with a bunch of worker threads.
<zao>
Or you can have more than one locality communicating over a parcelport, which enables the same kind of programming approach for a multi-machine program as you'd use for a single process, by using localities to address other instances.
<zao>
Kind of comparable with process ranks in MPI, if you're familiar with that.
<gonidelis>
Oh yeah! I have worked with MPI so I totally get the 'rank' analogy... Side question: 'parcelport' is sth like a control center that takes care of the asynchronous components in order for them to be executed in a specific order? Is that right?
<gonidelis>
Now that I am thinking of it, the term 'specific order' might be misleading as the components are asynchronous in the first place. What I mean is that it manages the flow and how the data are accessed maybe...
<hkaiser>
parcelport == networking interface
<gonidelis>
Great! Thank you...
diehlpk has joined #ste||ar
diehlpk has joined #ste||ar
diehlpk has quit [Changing host]
diehlpk has quit [Ping timeout: 256 seconds]
<gonidelis>
After taking a look at the c++17 parallel algorithms that you have implemented on HPX I can see that there are only 2 remaining: `shift left/righ` and `partial sort `
<gonidelis>
Are these algorithms enough in order for a Gsoc project to be carried just for them?
hkaiser_ has joined #ste||ar
<hkaiser_>
gonidelis: yes, I think so - the partial sort and stable_sort alone are quite some effort
<hkaiser_>
the shift algorithms are fairly straightforward
<hkaiser_>
we have more work on range based algorithms, though also there is the ticket outlining the need to rework the end iterators to truely enable arbitrary ranges