Øyvind Harboe wrote:
> On Fri, May 8, 2009 at 1:18 AM, Magnus Lundin <lun...@mlu.mine.nu> wrote:
>   
>> Ųyvind Harboe wrote:
>>     
>>>> The problem with the "fix" and the whole change set is that the
>>>>  fields{1].in_value variable is not assigned any return value until after
>>>> jtag_execute_queue(), and that is long after we exit this function and
>>>> temp
>>>> is out of scope.
>>>>
>>>>         
>>> Did you look at jtag_add_dr_scan_now()  implemenation?
>>>
>>> It calls jtag_execute_queue_noclear(), so we *can* use stack variables
>>> here for in_value.
>>>
>>>
>>>       
>> Yes, not my favourite modification, and we do NOT want to call
>> jtag_execute_queue for every value we vant to read, that will kill
>> performance.
>>     
>
> I have profiled OpenOCD quite a bit and improved performance
> for parport by 2x and other interfaces too.
> (Michael Fischer did the tests, I don't remember the figures).
>
> If there are any measurable performance regressions from these
> changes, then really we will be able to identify areas where
> things can be optimized significantly by moving lots of small
> calls into a bigger loop and then doing a large out/in scan and
> post processing.
>
> >From my patches you can see that I *do* avoid flushing
> the queue when possible.
>
> So if you see performance degradation and report it, I'll
> look into fixing that degradation too and I'm pretty sure
> we'll be *FASTER* than when we started. The code
> will execute faster now, but that makes no difference
> on a PC host, it's all about the roundtrip time...
>   
Sorry for "many small comments"  but does this performance improvement 
depend on the removal inhandler code or have you done other smart things ?

I still cannot understand why the inhandler stuff should decrease 
performance, or do we have to clean up and optimize that code instead of 
removing it?

Magnus


_______________________________________________
Openocd-development mailing list
Openocd-development@lists.berlios.de
https://lists.berlios.de/mailman/listinfo/openocd-development

Reply via email to