[PD] get the position of the mass in the same order than the creation with MSD

cyrille henry ch at chnry.net
Thu Jul 8 19:16:20 CEST 2010


ok.
could you try to remove the gemhead, and check that the slow part is Gem, not MSD?

do you use the double gemhead technics, or the repeat technic?
c


Le 08/07/2010 18:50, Jack a écrit :
> Le jeudi 08 juillet 2010 à 17:03 +0200, cyrille henry a écrit :
>> could you try to create the mobil masses, then the fixed masses, and use a list split 10000?
> OK, done.
> In fact, with 10000 mobiles masses and 10000 fixed masses, if i want
> position of the mobiles masses, i need to use a list split with
> 10000*2=20000 (for X and Y).
>
> So i have something like this :
> [MSD2D]
> |
> [route massesPosL]
> |
> [list split 20000]
> |
> [t l l]
> |     \
> [list length]
> |       \
> [until]  \
> |         \
> [list append]
> |         /
> [list split 2]
> |
> [unpack f f]
> |
> etc. with gemhead
>
> Maybe i miss something, but even with a structure with 2500 mobiles
> masses, this is slow.
> Thanx for your help.
> ++
>
> Jack
>
>
>>
>> couls you check what is the slow part of your patch :
>> i bet msd use about 10% cpu, everything else is used by the use of the data.
>> c
>>
>>
>> Le 08/07/2010 14:53, Jack a écrit :
>>> Hmm, in fact, this system is as slow as PMPD (even more !) even using
>>> [get massesPos mamasse(.
>>> The problem could come that i have 10000 times : mobile mass<->   link
>>> <->   immovable mass ? Is it preferable to have this system managed by
>>> PMPD instead of MSD ?
>>> ++
>>>
>>> Jack
>>>
>>>
>>>
>>> Le jeudi 08 juillet 2010 à 13:31 +0200, Jack a écrit :
>>>> Super ! It is working fine with [massesPosL(, a [until], a [list split
>>>> 4] and a [unpack f f].
>>>> Thanx a lot !
>>>> ++
>>>>
>>>> Jack
>>>>
>>>>
>>>>
>>>> Le jeudi 08 juillet 2010 à 13:24 +0200, Jack a écrit :
>>>>> Hello Cyrille,
>>>>>
>>>>> Thanks for your answer.
>>>>> My system has 10000 mobiles masses, 10000 immovables masses and 10000
>>>>> links.
>>>>> I tried with [massesPosL( message. But the problem is i got the position
>>>>> of the immovables masses. Maybe i can start to create the 10000
>>>>> immovables masses, then the 10000 mobiles masses and split the list at
>>>>> 10000 (the list is obtained with [massesPosL().
>>>>> Or i can split 4 elements then split 2 elements.
>>>>> I will try...
>>>>> ++
>>>>>
>>>>> Jack
>>>>>
>>>>>
>>>>> Le jeudi 08 juillet 2010 à 09:46 +0200, cyrille henry a écrit :
>>>>>> did the massesPosL message could help you?
>>>>>>
>>>>>> otherwise, you have the solution to use frank trick :
>>>>>> use the output of the get message to write in a table, and then read the table...
>>>>>>
>>>>>> c
>>>>>>
>>>>>> Le 08/07/2010 02:13, Jack a écrit :
>>>>>>> Hello,
>>>>>>>
>>>>>>> I have a problem with MSD (exactly [MSD2D]). When i send [bang, get
>>>>>>> massesPos mamasse( to [MSD2D], the output order of the positions of the
>>>>>>> masses is not the same that the one which was given during the creation.
>>>>>>>
>>>>>>> I'm not sure to be clear, so it is better to see an example ;) (see the
>>>>>>> attach patch) :
>>>>>>>
>>>>>>> If i create 3 masses in this order : [mass mamasse 1 100 0 1(, [mass
>>>>>>> mamasse 1 100 2 3( and [mass mamasse 1 100 4 5(.
>>>>>>> Then if i send [bang, get massesPos mamasse(, i can get from the first
>>>>>>> outlet of [MSD2D] :
>>>>>>> [massesPosId mamasse 2 3(
>>>>>>> [massesPosId mamasse 0 1(
>>>>>>> [massesPosId mamasse 4 5(
>>>>>>> Or
>>>>>>> [massesPosId mamasse 4 5(
>>>>>>> [massesPosId mamasse 2 3(
>>>>>>> [massesPosId mamasse 0 1(
>>>>>>> Or
>>>>>>> ...
>>>>>>>
>>>>>>> This is not really easy for me because i need to conserve this order :/
>>>>>>> It would be better to always get :
>>>>>>> [massesPosId mamasse 0 1(
>>>>>>> [massesPosId mamasse 2 3(
>>>>>>> [massesPosId mamasse 4 5(
>>>>>>>
>>>>>>> Is there a solution with MSD ?
>>>>>>> With PMPD and dynamic patching, i have no problem, but it is too slow.
>>>>>>> Number of mass>    10000.
>>>>>>> ++
>>>>>>>
>>>>>>> Jack
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> Pd-list at iem.at mailing list
>>>>>>> UNSUBSCRIBE and account-management ->    http://lists.puredata.info/listinfo/pd-list
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> Pd-list at iem.at mailing list
>>>>> UNSUBSCRIBE and account-management ->   http://lists.puredata.info/listinfo/pd-list
>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> Pd-list at iem.at mailing list
>>>> UNSUBSCRIBE and account-management ->   http://lists.puredata.info/listinfo/pd-list
>>>
>>>
>>>
>>> _______________________________________________
>>> Pd-list at iem.at mailing list
>>> UNSUBSCRIBE and account-management ->   http://lists.puredata.info/listinfo/pd-list
>
>
>
> _______________________________________________
> Pd-list at iem.at mailing list
> UNSUBSCRIBE and account-management ->  http://lists.puredata.info/listinfo/pd-list



More information about the Pd-list mailing list