On 05. Oktober 2014 20:40:19 MESZ, Jonghyun Kim <agitato...@gmail.com> wrote:
>Thanks for the solution. I can understand the actual problem on 32bit.

You might be confusing things here:
Currently pd will always uses single precision floats (which happen to have 
32bit on all known platforms), even when run "on" a 64bit system.

>But
>I think still this is a bug.

Yes, in your patch :-)
the question is, whether pd should work around system limitations. Eg if you 
ask it for a tabke with 10 tera-samples and you only have 4gb ram, should it...

>
>|
>> | +------+
>> [f]      |
>> |        |
>> [+ 1]    |
>> |        |
>> [% 6]    |
>> |        |
>> [t f f]  |
>> |     +--+
>> |
>
>
>Could you give me the patch again with easily drawing? Sorry I can't
>recognize your patch drawing...

check it with a monospaced font.
(and no, i cannot redraw it on my smartphone).




>
>Many thanks,
>akntk
>
>On Mon, Oct 6, 2014 at 1:22 AM, <zmoel...@iem.at> wrote:
>
>> (had to find a real compuer before anwering the actual question)
>>
>>
>> Quoting Jonghyun Kim <agitato...@gmail.com>:
>>
>>> Pd 0.45.5 (Vanilla)
>>> Mac OS X Mavericks 10.9.5
>>>
>>>
>>> I don't really know why this bug cause, or only my problem. This bug
>>> sometimes appears. I think this is very critical bug.
>>> [f] storing bug
>>>
>>> [metro 1]
>>> |
>>> [f 0]
>>> |  /
>>> [+ 1]
>>> |
>>> [% 6]
>>>
>>> respected result: 0, 1, 2, 3, 4, 5 (repeat)
>>>
>>> bug: 4, 4, 4, 4, 4 (always 4)
>>>
>>
>>
>> this very much sounds like a problem with floating point precision
>overrun.
>> an [f] object (and actually *any* number within the Pd universe) will
>hold
>> a single precision 32bit floating point number, which can only
>represent
>> *consecutive* integer values up to 16777216.
>> (consecutive means, that [f] can hold representations of both (e.g.)
>> 1000023 and 1000024).
>> if the numbers go higher, singple precision floats will have gaps
>bigger
>> than 1.0 inbetween them (e.g. the next number after 16777216
>representable
>> by [f] is 16777218) - this breaks a counter that increments 1 (since
>> 16777216+1 will be evaulated to ~16777216!)
>>
>> the solution is actually quite simple: never allow your number to
>grow as
>> big as that.
>>
>> in your counter this means, that the feeback part, must include the
>[% 6]
>> (so the numbers in the counter will only ever stay in the range
>0..6):
>>
>> |
>> | +------+
>> [f]      |
>> |        |
>> [+ 1]    |
>> |        |
>> [% 6]    |
>> |        |
>> [t f f]  |
>> |     +--+
>> |
>>
>> btw, you ASCII rendering of the patch did not use [trigger]. you
>should
>> always use it when you want to connect multiple inlets to a single
>outlet.
>>
>> mfgsdr
>> IOhannes
>>
>>
>>
>> _______________________________________________
>> Pd-list@lists.iem.at mailing list
>> UNSUBSCRIBE and account-management -> http://lists.puredata.info/
>> listinfo/pd-list
>>
>
>
>------------------------------------------------------------------------
>
>_______________________________________________
>Pd-list@lists.iem.at mailing list
>UNSUBSCRIBE and account-management ->
>http://lists.puredata.info/listinfo/pd-list

mfg.ugd.fhj
IOhannes

--
Sent from my pdp-11

_______________________________________________
Pd-list@lists.iem.at mailing list
UNSUBSCRIBE and account-management -> 
http://lists.puredata.info/listinfo/pd-list

Reply via email to