Kaikki tehokas on c-kieltä, kokeile ohjelmoida Direct3D-koodia.

Anonyymi

Niin direct3d... juurikin sellainen erittäin laiteläheinen grafiikkakiihdyttimien koodia, ei ole pythonia heh.

18

1470

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Anonyymi

      Et ymmärrä siitä höykäsen pöläystä.

      • Anonyymi

        Sinä et nyt ymmärrä mistään mitään.


      • Anonyymi

        w10 toimivuus on valetta!
        w10 on oikeesti OUT. Windows 10 on mahdollisesti kaikkien aikojen pahin vakoiluohjelma!
        Sekä dramaattinen suorituskyky syöppö. Sekä super toimimattomuus!!


    • Anonyymi

      Tehokkuus riippuu näkökulmasta. Teoriassa tehokkaimman mahdollisen ohjelman saat kun koodaat sen suoraan binäärikoodina, mutta kovin tehokasta työtä se ei olisi, koska pienenkin ohjelman tekeminen olisi järjettömän iso vaiva.

      Toisaalta mahdollisimman nopea työnteko ei tuota oikeasti kovinkaan tehokkaasti toimivaa koodia, vaan koko ajan pitäisi miettiä mitä tekee ja jälkikäteenkin vielä optimoida ohjelman toimintaa.

      C-kielessä on yleisellä tasolla aika hyvä tasapaino noiden ääripäiden välillä, mutta se, mikä kieli on kulloinkin tehokkain vaihtoehto, riippuu täysin tehtävästä. Jos pitäisi tehdä ohjelma, jossa on komentoriviltä hallittava tietokanta, niin C on varmasti aika vahvoilla. Jos sille pitäisi tehdä graafinen käyttöliittymä, niin C:n kanssa pelleilystä tulee vain tarpeetonta vaivaa, vaikka lopputulos olisikin aavistuksen optimoidumpi kuin jollain käytännöllisemmällä ja tehtävään sopivammalla kielellä toteutettuna, kuten C#:lla. Jos haluat vain pikaisesti nimetä uudelleen ison kansiorakenteen, Python on näppärin vaihtoehto (olettaen, että osaat koodata Pythonilla). Jos haluat tehdä isolle datasetille tilastollista analyysia, niin kannattaa käyttää R:ää.

      Yhteen kieleen jumittuminen on yhtä järkevää kuin työkalupakki, jossa on pelkkä ruuvimeisseli. Kyllähän sillä saa melkein mitä vain tehtyä kun innovoi, mutta ei se kivaa tai tehokasta ole.

      • Anonyymi

        Kääntäjät optimoivat (tekoäly)koodia niin tehokkaasti ettei C- tai assemblerille ole mitään käyttöä nykyään.


      • Anonyymi
        Anonyymi kirjoitti:

        Kääntäjät optimoivat (tekoäly)koodia niin tehokkaasti ettei C- tai assemblerille ole mitään käyttöä nykyään.

        Automaattikääntäjät tekevät ihan hyvää työtä nopeasti, mutta huolellinen ihminen pystyy optimoimaan paljon paremmin paljon hitaammin.


      • Anonyymi
        Anonyymi kirjoitti:

        Kääntäjät optimoivat (tekoäly)koodia niin tehokkaasti ettei C- tai assemblerille ole mitään käyttöä nykyään.

        Mitä se tekoälykoodi sitten on?


      • Anonyymi

        Yhteen kieleen jumittuminen on yhtä järkevää kuin kaikkien kielten opiskelu. Kannattaa luoda oma työkalupakkinsa ja opetella käyttämään sitä ennemin! Eli valita järkevästi kieliä, mitkä niveltyvät hyvin yhteen toistensa kanssa ennemmin kuin alkaa opiskella jotain random-kieltä, joka sattuu tulemaan nurkan takaa vastaan uuden projektin nimissä. Kieli kun ei ole kuin kokoelma syntaksi-sääntöjä ja se asian pihvi tulee kaikesta oheen liittyvästä, ,kuten kirjastoista, kääntämisestä, dokumentoinnin helppoudesta, kone-arkkitehtuurista, yms. yms. Ja olen kyllä sitä mieltä, että assembler kuuluu tähän työkalupakkiin - vaikka kaikki ehkä eivät samaa mieltä olisikaan! Ja sitten kun oma pakki on hallussa - ei ole kovin suuri kynnys kokeilla "kaverin" pakista löytyviä työkalujakaan ja kenties päivittää oman pakin sisältöä.


      • Anonyymi

        "C-kielessä on yleisellä tasolla aika hyvä tasapaino noiden ääripäiden välillä"

        Ei ole. C-kielellä jos tekee jonkun yksinkertaisen palikan niin käynnistyy nopeasti ja toimii nopeasti mutta ongelma tulee siitä kun C-kielisiä palikoita käynnistellään ja kytketään toisiinsa niin se onkin hyvin hidasta. C-kieli on aika huono siinä että samassa prosessissa toimisivat kun on suunniteltu siihen, että käynnistää palikoita omiin prosesseihin.

        Esimerkiksi jos tekee verkkosivuston niin se Python on esimerkiksi helposti suorituskykyisempi kun ei aina sisältöä ladattaessa käynnistetä sitä ohjelmanpätkää uudestaan vaan toimii samassa prosessissa siinä HTTP palvelimessa.


      • Anonyymi
        Anonyymi kirjoitti:

        "C-kielessä on yleisellä tasolla aika hyvä tasapaino noiden ääripäiden välillä"

        Ei ole. C-kielellä jos tekee jonkun yksinkertaisen palikan niin käynnistyy nopeasti ja toimii nopeasti mutta ongelma tulee siitä kun C-kielisiä palikoita käynnistellään ja kytketään toisiinsa niin se onkin hyvin hidasta. C-kieli on aika huono siinä että samassa prosessissa toimisivat kun on suunniteltu siihen, että käynnistää palikoita omiin prosesseihin.

        Esimerkiksi jos tekee verkkosivuston niin se Python on esimerkiksi helposti suorituskykyisempi kun ei aina sisältöä ladattaessa käynnistetä sitä ohjelmanpätkää uudestaan vaan toimii samassa prosessissa siinä HTTP palvelimessa.

        Tämä ...'kun C-kielisiä palikoita käynnistellään ja kytketään toisiinsa niin se onkin hyvin hidasta'... on totta windowsissa johtuen windowsin API 'teknologiasta'...


      • Anonyymi
        Anonyymi kirjoitti:

        Tämä ...'kun C-kielisiä palikoita käynnistellään ja kytketään toisiinsa niin se onkin hyvin hidasta'... on totta windowsissa johtuen windowsin API 'teknologiasta'...

        C-kieli on kieli jolla tehtiin unix, ja sen juuret on vahvasti siinä että tehdään pieni erikoistunut palikka ja noita sitten yhdistellään.

        Microsoft sitten aikoinaan satsasi paljon C :n kun halusivat samaan prosessiin laajoja sovelluksia (myivät sovelluksia ominaisuusmäärällä) ja tuohon aikaan uskottiin että C on hyvä graafisille sovelluksille.

        C kun ei ollut pelkästään olio-ominaisuudet vaan siinä nimiavaruus helpotti paljon sitä kun tehtiin yhdestä prosessista laaja.

        Tuo tietenkin johti sitten siihen, että säikeiden tarve meni kriittiseksi Windowsissa. Unixeissa palastellut ohjelmat jakautuivat prosessoriytimille tasaisesti, varsinkin kun samaa tietokonetta käytti useita käyttäjiä samanaikaisesti.


      • Anonyymi
        Anonyymi kirjoitti:

        "C-kielessä on yleisellä tasolla aika hyvä tasapaino noiden ääripäiden välillä"

        Ei ole. C-kielellä jos tekee jonkun yksinkertaisen palikan niin käynnistyy nopeasti ja toimii nopeasti mutta ongelma tulee siitä kun C-kielisiä palikoita käynnistellään ja kytketään toisiinsa niin se onkin hyvin hidasta. C-kieli on aika huono siinä että samassa prosessissa toimisivat kun on suunniteltu siihen, että käynnistää palikoita omiin prosesseihin.

        Esimerkiksi jos tekee verkkosivuston niin se Python on esimerkiksi helposti suorituskykyisempi kun ei aina sisältöä ladattaessa käynnistetä sitä ohjelmanpätkää uudestaan vaan toimii samassa prosessissa siinä HTTP palvelimessa.

        Kyllä se Python on yleisesti ottaen hidas kun on tulkkaava.


      • Anonyymi
        Anonyymi kirjoitti:

        Kyllä se Python on yleisesti ottaen hidas kun on tulkkaava.

        Ohjelmat kannattaa ajaa Pypy:llä. Usein 10...30 kertainen nopeutus. Muuttaa kaikki silmukat konekielisiksi.


      • Anonyymi
        Anonyymi kirjoitti:

        Kyllä se Python on yleisesti ottaen hidas kun on tulkkaava.

        Perus Python kääntää kyllä tavukoodiksi ensimmäisen käynnistyksen yhteydessä että tulkkaaminen on tehokkaampaa.

        Eikä välttämättä ole hidas jos sillä tavalla vaikkä vältetään käynnistämästä prosesseja uudestaan.


      • Anonyymi
        Anonyymi kirjoitti:

        Ohjelmat kannattaa ajaa Pypy:llä. Usein 10...30 kertainen nopeutus. Muuttaa kaikki silmukat konekielisiksi.

        Kaikki koodi muuttuu konekieliseksi joko kääntäjän tai tulkin avulla, koska muuten niitä ei pystyisi suorittamaan lainkaan.


      • Anonyymi
        Anonyymi kirjoitti:

        "C-kielessä on yleisellä tasolla aika hyvä tasapaino noiden ääripäiden välillä"

        Ei ole. C-kielellä jos tekee jonkun yksinkertaisen palikan niin käynnistyy nopeasti ja toimii nopeasti mutta ongelma tulee siitä kun C-kielisiä palikoita käynnistellään ja kytketään toisiinsa niin se onkin hyvin hidasta. C-kieli on aika huono siinä että samassa prosessissa toimisivat kun on suunniteltu siihen, että käynnistää palikoita omiin prosesseihin.

        Esimerkiksi jos tekee verkkosivuston niin se Python on esimerkiksi helposti suorituskykyisempi kun ei aina sisältöä ladattaessa käynnistetä sitä ohjelmanpätkää uudestaan vaan toimii samassa prosessissa siinä HTTP palvelimessa.

        Jossain - en muista missä - oli tehty muistaakseni tcl:llä web-serveri, joka sisälsi n. 200 riviä koodia, mutta mahdollisti säikeistyksen skripti-tasolla. Yllättäen huomattiin, että em. serveri pystyi suoritustasolla kutakuinkin samaan, kuin apache2. Hiukan hämmentävää? Ei oikeastaan. Koneessa oli riittävästi tehoja ja useampi core, joten kävi niin, että vaikka tcl käytti resursseja n. 10x enemmän kuin optimoitu apache, niin se silti selvisi tehtävästä, koska pullonkaulana oli nettiliittymän nopeus - tai paremminkin hitaus.
        Ero oli siinä, että tcl-serveriin oli käytetty resursseja muutama päivä koodausta kun apache2 on varmaankin jo reilusti yli 10 vuoden projekti? Tahtoo sanoa, että sopivia optimointeja löytyy aina c-kielelle, mutta jossakin kohtaa tulee raja vastaan, kannattaako niitä lähteä enää totetuttamaan..


    • Anonyymi

      Mutta jos puhuttaisiinkin directx-jutuista ja grafiikkakiihdyttimien jutuista suoraan, niin, todella: suoraan kysyt pc-väyläajurilta tietoja minkälaisia prosessoreja on väylällä tulee tietoja, onko 64-bittisiä ja mitä onkaan sitten, sanotaan että PCI-bus-request on ALL-buses, kaikki kovalevyt ja kaikki näkyvät listana, että mitä haluat sitten jonkin niiden kanssa tehdä?

    • Anonyymi

      Aluksi alkaen kun aloitettiin puhumaan väyläajureista, jotka tietävät minkälaisia prosessoreja laitteesi mahdollisesti sisältää, eli tästä lähteä sitten eikä pythonista kuin jotain visual basicia on python...

    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
      236
      4600
    2. Kuka rääkkää eläimiä Puolangalla?

      Poliisi ampui toistakymmentä nälkiintynyttä eläintä Puolangalla Tilalta oli ollut karkuteillä lähes viisikymmentä nälkii
      Puolanka
      76
      3035
    3. Leipivaaran päällä on kuoleman hiljaista.

      Suru vai suuri helpotus...
      Puolanka
      47
      2463
    4. 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ä
      45
      1767
    5. Laitetaas nyt kirjaimet tänne

      kuka kaipaa ja ketä ?
      Ikävä
      25
      1613
    6. Koska näit kaivattusi viimeksi

      Milloin tapasit rakkaasi? Ja etenikö suhde yhtään?
      Ikävä
      78
      1439
    7. Lähetä terveisesi kaipaamallesi henkilölle

      Vauva-palstalta tuttua kaipaamista uudessa ympäristössä. Kaipuu jatkukoon 💘
      Ikävä
      85
      1285
    8. PS uusimman gallupin rakettimainen nousija

      https://yle.fi/a/74-20170641 Aivan ylivoimaisesti suurin kannatuksen nousu PS:lle. Nousu on alkanut ja jatkuu 2 vuoden
      Maailman menoa
      143
      965
    9. Tekiskö nainen mieli tavata...

      Viikonloppuna ja...?
      Ikävä
      69
      938
    10. Sellainen tunne sydämessä

      Että nainen olet kaivannut minua. Tai sanonko että oikeastaan koet sitä samaa nostalgiaa, kaipuuta ja mukavia muistoja,
      Ikävä
      86
      894
    Aihe