thomas,

I sorted out the reasoning for register_as and connect_to and how that
works with respect to actions and an action's scheduled execution on a
remote node - my little tutorial application seems to be working well now.
a lot of the distributed computing bits are making more sense after having
reviewed demo codes, the APIs, and the unit test codes.

v/r,

ct

On Tue, Apr 25, 2017 at 2:30 PM, ct clmsn <[email protected]> wrote:

> thomas,
>
> i'm in the midst of building a customized type to load histogram
> information from files into a partitioned_vector. ideally, an hpx parallel
> loop (for_each) should run over the partitioned_vector's elements in order
> to schedule execution of an hpx-action which tells the partitioned_vector's
> elements to load their respective data files (the parallel loop is a vector
> of file paths).
>
> which parts of the hpx source tree (unit tests, examples) would you
> encourage me to review? i get the impression this should be a fairly
> straightforward bit of code.
>
> thanks in advance,
>
> ct
>
> On Mon, Apr 24, 2017 at 4:52 PM, Thomas Heller <[email protected]>
> wrote:
>
>> Hi Chris,
>>
>> Am 24.04.2017 7:30 nachm. schrieb "ct clmsn" <[email protected]>:
>>
>> two questions for the stellar community - if i'm writing a distributed
>> program that does not use the hpx spmd model, does hpx require the
>> partitioned_vector storing components to be registered into the agas? if
>> so, does hpx also require a call the connect function? several of the
>> non-spmd partitioned_vector unit tests do not require register/connect -
>> were those unit tests intended only to support single-node testing or is
>> distributed execution also supported?
>>
>>
>> I'm going to answer that later... Requires more writing...
>>
>>
>> on a separate issue, i'd like to access the contents of a distributed
>> vector that stores a component called 'dataset_t'  (the component inherits
>> from hpx::components::simple_component_base<dataset_t> ; the client
>> interface for the component inherits from 
>> hpx::components::client_base<dataset_t,
>> server::dataset_t>).
>>
>>
>> Just for future reference, this might not be what you want. For
>> hpx::partitioned_vector<T>, T does not need to be a component. In fact, the
>> vector stores any T and distributes it over the partitions.
>>
>>
>> currently, the following code compiles and produces a runtime exception.
>>
>> std::vector<std::size_t> pos = { static_cast<std::size_t>(idx) };
>> std::vector<dataset_t> svec = dataset_arr.get_values_sync(pos);
>>
>> hpx::future<void> fc = svec[0].create(args);
>> fc.wait();
>> hpx::future<void> fv = dataset_arr.set_values(pos, svec);
>> fv.wait();
>>
>> the program runs on 1 node/host without any runtime arguments applied.
>> the runtime exception reads:
>>
>> "{what}: this client_base has no valid shared state: HPX(no_state)"
>>
>>
>> Makes sense, the client is default constructed, which doesn't create a
>> component. It might not need to after all (see comment above).
>>
>>
>> how should i comprehend this runtime exception?
>>
>>
>> The client did not allocate a component which it "points" to.
>>
>> All in all it's difficult to say what the proper fix would be without
>> looking at the code.
>>
>>
>> also, when the following, much simpler implementation, of sample code
>> runs:
>>
>> hpx::future<dataset_t> fd = dataset_arr.get_value(static_c
>> ast<std::size_t>(idx));
>> fd.wait();
>>
>> i had the following compile error:
>>
>> "hpx/traits/get_remote_result.hpp:25:41: error: no matching function for
>> call to 'hpx::naming::id_type::id_type(std::remove_reference<dataset
>> _t&>::type"
>>
>>
>> any help, questions, or assistance would be appreciated!
>>
>> chris
>>
>> _______________________________________________
>> hpx-users mailing list
>> [email protected]
>> https://mail.cct.lsu.edu/mailman/listinfo/hpx-users
>>
>>
>>
>> _______________________________________________
>> hpx-users mailing list
>> [email protected]
>> https://mail.cct.lsu.edu/mailman/listinfo/hpx-users
>>
>>
>
_______________________________________________
hpx-users mailing list
[email protected]
https://mail.cct.lsu.edu/mailman/listinfo/hpx-users

Reply via email to