← Back to team overview

kicad-developers team mailing list archive

Re: Net names and net codes

 

Hi Carl,

That's great news. Do not hesitate to ask about the code if you have any doubts. I keep fingers crossed.

Regards,
Orson

On 01/13/2014 03:46 PM, Carl Poirier wrote:
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 <mailto: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
            <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
    <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
    <https://launchpad.net/~kicad-developers>
    Post to     : kicad-developers@lists.__launchpad.net
    <mailto:kicad-developers@xxxxxxxxxxxxxxxxxxx>
    Unsubscribe : https://launchpad.net/~kicad-__developers
    <https://launchpad.net/~kicad-developers>
    More help   : https://help.launchpad.net/__ListHelp
    <https://help.launchpad.net/ListHelp>





References