Tehdäänpäs nopeustestejä eri kielille. Lasketaan tuhanteen ja tulostetaan promptiin.
Vanha kunnon Pascal pyyhki lattiaa sekä REBOL:lle että Red-ohjelmointikielille. Kaksi miljoonasosa sekuntia!!!! Tulkkaavalla REBOL-kielellä kesti jopa yli sekunnin. Red-ohjelmointikielelläkin vajaa sekunti.
Mulla ei oo koneella C-kääntäjää. Voisko joku kokeilla C-kielellä? Veikkaan nimittäin, että 60-luvulla, jolloin resursseista oli pulaa ja kääntäjät piti optimoida kehitetty Pascal voittaa jopa C-kielen!! Tai olikohan se 70-luvulla....
Re: Nopeustestejä eri kielten välillä
Lähetetty: 01 Joulu 2022, 14:50
Kirjoittaja deep purpose
Ne oli nopeampia ehkä myös sen takia kun bitit ja datamäärät ei vielä ollu 64-bittisiä vielä. Kovin juttu softassa, ajatellen nykyaikaa on valmiiksi tehdyt data-partikkelit + tekoäly sen päälle.
Re: Nopeustestejä eri kielten välillä
Lähetetty: 01 Joulu 2022, 17:16
Kirjoittaja Keckuli
Mitä ovat valmiiksi tehdyt data-partikkelit?
Re: Nopeustestejä eri kielten välillä
Lähetetty: 01 Joulu 2022, 17:21
Kirjoittaja SHT
Yritin jossain vaiheessa löytää C-kääntäjän (en kyllä muista miksi), mutten löytänyt sellaista, joka olisi toiminut 64-bittisessä koneessa.
Re: Nopeustestejä eri kielten välillä
Lähetetty: 01 Joulu 2022, 17:25
Kirjoittaja deep purpose
Keckuli kirjoitti: ↑01 Joulu 2022, 17:16
Mitä ovat valmiiksi tehdyt data-partikkelit?
Esim. mun musa-softa Reason 12 - siihen tuli mun visioima uudistus. Nimittäin kun siinä ohjelmassa on saundin-etsintä funktio, niin ennen mun tätä ideaa se 'sound-search' teki etsinnän koko kovalevylle, ja aikaa kului about 2,4 minuuttia. Nyt tässä uudessa etsintämoottorissa, kaikki noi saundit indeksoitiin, eli tehtiin etsintä pois kerran, ja myöhemmin ei tarvinnut enää tehdä kokonaisvaltaista etsintää uudellen, sillä esim. thunder samplet sai indeksöinnin takia ruutuun jo 4 sekunnissa. Muuten se olis vienny sen 2,4 minuuttia!
Datatilaa kun on nykyisin niin hemmetisti, niin kaikki etukäteisjutut saa softat paljon nopeimmiksi ja tehokkaammiksi.
Re: Nopeustestejä eri kielten välillä
Lähetetty: 01 Joulu 2022, 17:49
Kirjoittaja Keckuli
Mitä muuten tulee musajuttuihin, niin mä ohjelmoin ärsyttäviä kilkkeitä ja kolkkeita ja piipityksiä REBOL-ohjelmointikielellä. Esimerkiksi alla oleva ohjelma saa aikaiseksi nämä korvia ärsyttävät(?) äänet:
Tuo tuottaa käytännössä ikuista tietsikka "musaa". Pieniä kivoja muutoksia siihen tulee noin kolmen minuutin jälkeen. Siis pistin ite äänityksen poikki 5 minuutin kohdalla.
Käsittelen niitä kilkkeitä ja kolkkeita sitten Audacityllä ja saan vähän miellyttävämpiä saoundeja, ehkä. Muun muassa tän yli puolituntisen animaatio taidepläjäyksen soundit on tehty sillee:
Re: Nopeustestejä eri kielten välillä
Lähetetty: 01 Joulu 2022, 18:05
Kirjoittaja deep purpose
Kuuntelin ja katsoin 5 min - tää oli kiva tommonen maadoitus-tekele. Sain tästä jotenkin aikakoneen omiinkin 90-luvun simppeleihin tuotoksiin!
Re: Nopeustestejä eri kielten välillä
Lähetetty: 01 Joulu 2022, 19:26
Kirjoittaja Neutroni
Visual Studio 2022:n ilmaisversiolla 32 bittisenä vakioparametreillä menee noin 0.33 s. Tuo 2 µs on aika erikoinen lukema, koska konsoliin kirjoittaminen vie aikaa. Ehkä tuo nopea systeemi bufferoi sen jotenkin fiksummin. Tuo nyt ei anna kovin kummallista käsitystä kielten eroista, mutta Pascal ja C tuottavat tuollaisissa yksinkertaisissa tapauksissa aika samanlaisen koodin.
Re: Nopeustestejä eri kielten välillä
Lähetetty: 01 Joulu 2022, 21:19
Kirjoittaja Keckuli
Neutroni kirjoitti: ↑01 Joulu 2022, 19:26
Tuo 2 µs on aika erikoinen lukema, koska konsoliin kirjoittaminen vie aikaa.
Joo, ei se pidä paikkaansa. Freepascalin datetime tyyppi on aika erikoinen, en ymmärrä sitä. Double tyyppiä se on, mutta en tiedä sen tulkintaa.
Re: Nopeustestejä eri kielten välillä
Lähetetty: 01 Joulu 2022, 21:34
Kirjoittaja Neutroni
Keckuli kirjoitti: ↑01 Joulu 2022, 21:19
Joo, ei se pidä paikkaansa. Freepascalin datetime tyyppi on aika erikoinen, en ymmärrä sitä. Double tyyppiä se on, mutta en tiedä sen tulkintaa.
Tuo on ilmeisesti vuorokausia 30.12.1899:n alusta. Se pitää kertoa 86400:lla, jolloin tuosta tulee jotain 0.2 s, mikä on järkevämpi aika tuhannen rivin printtaamisesta konsolille.
Keckuli kirjoitti: ↑01 Joulu 2022, 21:19
Joo, ei se pidä paikkaansa. Freepascalin datetime tyyppi on aika erikoinen, en ymmärrä sitä. Double tyyppiä se on, mutta en tiedä sen tulkintaa.
Tuo on ilmeisesti vuorokausia 30.12.1899:n alusta. Se pitää kertoa 86400:lla, jolloin tuosta tulee jotain 0.2 s, mikä on järkevämpi aika tuhannen rivin printtaamisesta konsolille.
SHT kirjoitti: ↑01 Joulu 2022, 17:21
Yritin jossain vaiheessa löytää C-kääntäjän (en kyllä muista miksi), mutten löytänyt sellaista, joka olisi toiminut 64-bittisessä koneessa.
Visual Studion ilmaisversio toimii. Käsittääkseni myös GCC tekee 64 bittisiä ohjelmia.