← Back to team overview

kicad-developers team mailing list archive

Re: Net names and net codes

 

I read the small section about it in the wiki and have seen your outcome.
Having experience with not only OpenMP but threading/multiprocessing in
general (OpenCL, OpenMPI and GoRoutines), I will give the code a look. I'll
then let you know if I give it a go.

Regards,

Carl


On Mon, Jan 13, 2014 at 3:04 AM, Maciej Sumiński <maciej.suminski@xxxxxxx>wrote:

> On 01/10/2014 08:45 PM, Vesa Solonen wrote:
>
>> 10/01/14 19:35, Maciej Sumiński kirjoitti:
>>
>>  the board that I recommended for testing the GAL
>>> (http://www.ohwr.org/attachments/download/2187/wrs.kicad_pcb), when you
>>> drag the biggest IC in the middle, as it contains the greatest number of
>>> nets connected. After being dropped you may observe a freeze for a short
>>> time, it is the ratsnest algorithm going - we have to decide if it is
>>> acceptable.
>>>
>>
>> While the big redesign/rewrite of Kicad core is going on, it might be a
>> good moment to think some radical moves. Designing all computationally
>> intensive parts with multi core processors, de facto available
>> SIMD/Vector instructions and OpenCL in mind.
>>
>> As an example instruct the compiler to autovectorize just that ratsnest
>> calculation. Or the previous plus function written to support multiple
>> threads. Running the UI thread and processing threads separate, say the
>> ratsnest being constantly iterated in the background when it changes.
>>
>> Just by GCC autovectorization its easy to get ten times more comparing
>> or multiplying performane.
>>
>> -Vesa
>>
>
> I fully support the idea, in fact I have dreamed about this too (
> http://www.ohwr.org/projects/cern-kicad/wiki/ratsnest-gal#
> Possible-upgrades). I had a short try with OpenMP, but I did not get any
> better results, so it seems that I could have done it wrong.
> If there are volunteers who have some experience with parallelization I am
> very eager to cooperate to speed up some of computations. The ratsnest
> algorithm is a perfect place to start with. It is performed on per net
> basis, so they are all independent to each other.
>
> Regards,
> Orson
>
> _______________________________________________
> Mailing list: https://launchpad.net/~kicad-developers
> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~kicad-developers
> More help   : https://help.launchpad.net/ListHelp
>

Follow ups

References