Vb ja nopeus

Korak.

Hiukan hidas systeemi nykyiseen tarpeeseeni. Tietysti voisi hankkia nopeampia koneita, mutta onko jotain niksejä nopeuden lisäämiseen, kun käytössä on Vb.net (2003 versio).

9

821

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Ensiapua

      Vaihda kieli toiseksi (mielummin sellaiseksi joka kääntää suoraan konekoodiksi), algoritmi paremmaksi.

      • Korak.

        on sama millä kielellä kirjoittaa, kun .net on alustana. Tässä tapauksessa käytännön syistä ei kieltä voi muutenkaan vaihtaa ja varsinkin tuo .net on nyt kiertämätön juttu.


      • aölkads
        Korak. kirjoitti:

        on sama millä kielellä kirjoittaa, kun .net on alustana. Tässä tapauksessa käytännön syistä ei kieltä voi muutenkaan vaihtaa ja varsinkin tuo .net on nyt kiertämätön juttu.

        vb.net on syy siihen miksi tulevaisuudessa ja nykyisyydessäkin tullaan näkemään aivan järkyttävän huonosti suunniteltuja ja toteutettuja oliopohjaisia ohjelmia!


      • Korak.
        aölkads kirjoitti:

        vb.net on syy siihen miksi tulevaisuudessa ja nykyisyydessäkin tullaan näkemään aivan järkyttävän huonosti suunniteltuja ja toteutettuja oliopohjaisia ohjelmia!

        Tässä ei nyt käytetä mitään olioita, enkä niitä kaipaakaan kun signaalinkäsittelystä on kysymys (yksinkertaisia operaatioita), mutta nopeutta tarvitaan lisää. Huomatkaa nyt vielä, että on ihan sama mikä kieli on tuon .netin päällä ja lopullinen ohjelma on kokolailla yhtä nopea, joten nyt ei ole kyseessä kieliongelma.

        Paljon on mielipiteitä palstoilla, mutta eikö kukaan ole tehnyt mitää nopeusviilailua.

        Joskus muinoin käytettiin kieliversioita, joista pystyi ottamaan käyttöön vain halutut käskyt ja lopullinen koodi oli sitten tiukempaa.
        Myös muuttujien tyypeillä kikkailtiin ja muuta vastaavaa. Itseasiassa oli jopa listoja, millaisia aikoja kukin käsky vaati.

        Onko nyt siis edetty ohjelmoinnissa niin pitkälle, ettei noita juttuja kaivata tai osata soveltaa nykyisissä systeemeissä.


      • TRRY
        Korak. kirjoitti:

        Tässä ei nyt käytetä mitään olioita, enkä niitä kaipaakaan kun signaalinkäsittelystä on kysymys (yksinkertaisia operaatioita), mutta nopeutta tarvitaan lisää. Huomatkaa nyt vielä, että on ihan sama mikä kieli on tuon .netin päällä ja lopullinen ohjelma on kokolailla yhtä nopea, joten nyt ei ole kyseessä kieliongelma.

        Paljon on mielipiteitä palstoilla, mutta eikö kukaan ole tehnyt mitää nopeusviilailua.

        Joskus muinoin käytettiin kieliversioita, joista pystyi ottamaan käyttöön vain halutut käskyt ja lopullinen koodi oli sitten tiukempaa.
        Myös muuttujien tyypeillä kikkailtiin ja muuta vastaavaa. Itseasiassa oli jopa listoja, millaisia aikoja kukin käsky vaati.

        Onko nyt siis edetty ohjelmoinnissa niin pitkälle, ettei noita juttuja kaivata tai osata soveltaa nykyisissä systeemeissä.

        Voitko toteuttaa osan ohjelmasta DLL:ään, jota sitten kutsut dotnet-sovelluksesta (esim. http://www.codeproject.com/csharp/dyninvok.asp)? Saat siten nopeuskriittisen osan ohjelmastasi pois dotnet-virtuaalikoneen sisältä, joten nopeutta pitäisi löytyä lisää.

        Toinen vaihtoehto voisi olla käyttää mahdollisimman paljon valmiita matikkakirjastoja dotnetistä (jos ne ovat nopeita --- omaa kokemusta ei minulla ole) tai sille kolmannen osapuolen tekemiä (esim. http://www.extremeoptimization.com/). Nopeutta voisi taas tulla lisää siitä, että numeeriset rutiinit hoidettaisiin natiivikoodilla.

        Kolmas vaihtoehto on ainoa mahdollinen, jos nopeutta tarvitaan _paljon_ lisää. Se on: käytä nopeampaa algoritmia tai viilaa tietorakenteita.


      • kantaan
        Korak. kirjoitti:

        Tässä ei nyt käytetä mitään olioita, enkä niitä kaipaakaan kun signaalinkäsittelystä on kysymys (yksinkertaisia operaatioita), mutta nopeutta tarvitaan lisää. Huomatkaa nyt vielä, että on ihan sama mikä kieli on tuon .netin päällä ja lopullinen ohjelma on kokolailla yhtä nopea, joten nyt ei ole kyseessä kieliongelma.

        Paljon on mielipiteitä palstoilla, mutta eikö kukaan ole tehnyt mitää nopeusviilailua.

        Joskus muinoin käytettiin kieliversioita, joista pystyi ottamaan käyttöön vain halutut käskyt ja lopullinen koodi oli sitten tiukempaa.
        Myös muuttujien tyypeillä kikkailtiin ja muuta vastaavaa. Itseasiassa oli jopa listoja, millaisia aikoja kukin käsky vaati.

        Onko nyt siis edetty ohjelmoinnissa niin pitkälle, ettei noita juttuja kaivata tai osata soveltaa nykyisissä systeemeissä.

        >...on ihan sama mikä kieli on tuon .netin päällä ja lopullinen ohjelma on kokolailla...

        Yhtä hidas.

        Koeta ymmärtää että jos teet nopeuskriittistä koodia niin unohdat .netit heti kättelyssä.


    • lkjh
    • xxxxx

      Uudet tietokoneet (keskusyksiköt kokonaisuudessaan) maksavat muutaman sadan euron verran, joten tuolla hinnalla ei monikaan haluaisi räpeltää koodista tehokkaampaa.

      Mutta jos haluat askarrella vanhalla hitaalla koneellasi, niin kerro mitä tarkoitat signaalikäsittelyllä? Luetko rs-portista vai muualta sen signaalin? Kuinka paljon tietoa tulee? Millaisia laskutoimituksia sille suoritat?

      Ja tärkein kysymys: Mikä osa ohjelmastasi on hidas? Sinun pitäisi yksilöidä kysymyksesi tarkemmin, jotta siihen voisi vastata. Ohko hidasta luku vai käsittely vai ruudulle tulostus?

      Muuttujina tietysti käytät kokonaislukumuuttujia aina kun niiden lukuarvorajat ovat riittävät. Etenkin silmukoissa ja usein käytetyissä muuttujissa. Mutta jos panet ohjelmasi hitaan osan koodin tänne, niin voin kertoa jos osaan sitä nopeuttaa.

    • suoraan..

      Hommaa vaikka Turbo Delphi ja koodaile Win32 alustalle. Kieli syntaksiltaan on tuskin vaikeempi kuin Vb.net

    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Useita puukotettu Tampereella

      Mikäs homma tämä nyt taas on? "Useaa henkilöä on puukotettu Tampereen keskustassa kauppakeskus Ratinan lähistöllä." ht
      Tampere
      146
      2785
    2. Asiakas iski kaupassa varastelua tehneen kanveesiin.

      https://www.iltalehti.fi/kotimaa/a/33a85463-e4d5-45ed-8014-db51fe8079ec Oikein. Näin sitä pitää. Kyllä kaupoissa valtava
      Maailman menoa
      363
      2012
    3. Leipivaaran päällä on kuoleman hiljaista.

      Suru vai suuri helpotus...
      Puolanka
      40
      1747
    4. Kuka rääkkää eläimiä Puolangalla?

      Poliisi ampui toistakymmentä nälkiintynyttä eläintä Puolangalla Tilalta oli ollut karkuteillä lähes viisikymmentä nälkii
      Puolanka
      35
      1658
    5. Meneeköhän sulla

      oikeasti pinnan alla yhtä huonosti kuin mulla? Tai yhtä huonosti mutta jollain eri tyylillä? Ei olisi pitänyt jättää sua
      Ikävä
      28
      1370
    6. Jos ei tiedä mitä toisesta haluaa

      Älä missään nimessä anna mitään merkkejä kiinnostuksesta. Ole haluamatta mitään. Täytyy ajatella toistakin. Ei kukaan em
      Ikävä
      94
      1213
    7. Määpä tiijän että rakastat

      Minua nimittäin. Samoin hei! Olet mun vastakappaleeni.
      Ikävä
      54
      1173
    8. Muutama kysymys ja huomio hindulaisesta kulttuurista.

      Vedakirjoituksia pidetään historiallisina teksteinä, ei siis "julistuksena" kuten esimerkiksi Raamattua, vaan kuten koul
      Hindulaisuus
      328
      945
    9. Jumala puhui minulle

      Hän kertoi sinusta asioita, joiden takia jaksan, uskon ja luotan. Hän kuvaili sinua minulle ja pakahduin onnesta kuulles
      Ikävä
      110
      938
    10. Annan meille mahdollisuuden

      Olen avoimin mielin ja katson miten asiat etenevät. Mutta tällä kertaa sun on tehtävä eka siirto.Sen jälkeen olen täysil
      Ikävä
      53
      782
    Aihe