Trad4 ay isang ganap na kasabay, thread safe programming language na kaliskis linearly sa maramihang mga core. Ang mga proyekto ay una inilaan para sa deployment sa industriya ng pananalapi na modelo ng real-time na panganib.
Binubuo Trad4 ng isang library at isang pre-processor. Tukuyin mo ang iyong mga bagay gamit ang isang simpleng syntax at patakbuhin ang pre-processor. Trad4 gumagawa ng isang maliit ng C file para sa bawat bagay, kabilang ang isang stub file - ang paraan ng pagkalkula. Ito ay makakakuha ng tinatawag sa bawat oras na ang mga pangangailangan ng object sa apoy, at kailangan mo upang tustusan ang lohika para sa. Trad4 kinukuha ang lahat ng mga impormasyon sa mga pangangailangan object na upang makalkula ang sarili sa saklaw ng mga ito function.
Ang mga source file ay pagkatapos ay naipon at kasama libtrad4.so ay na-link sa isang executable. Ito pagkatapos ay magsisimula ang laban sa isang database.
Palitan pagkatapos ay kutsara sa mga system, at trad4 namamahala pagbabago na up sa pamamagitan ng iyong graph at magtatala ng mga puno hanggang sa petsa sa real time.
Trad4 ay isang bagong paraan ng pag-aayos ng mga programa sa memorya at ng isang bagong estilo ng daloy-of-control.
Bakit gamitin trad4?
Ito ay napakadaling gamitin. Upang bumuo ng isang trad4 application sa modelo ng iyong problema, kailangan mo lamang ng isang mabuting pang-unawa ng iyong problema at kaalaman ng isang maliit na subset ng mga C programming language.
Ito ay napakabilis. Bilang mo mabulok ang iyong problema sa mga hiwalay na mga bagay, ito ay nagpapahintulot sa maramihang mga thread upang magsagawa ng iba't ibang mga bahagi ng iyong problema sa parehong oras, kaya kaliskis ng trad4 application linearly sa maramihang mga core. Trad4 mismo ay may masyadong maliit na overhead - may mga tunay ilang mga tagubilin sa pagitan ng isang bagay na nangangailangan na tumakbo at ito ay kalkulahin ang function na tinatawag.
Ito ay mahusay. Bilang ka magsimula ang iyong problema out sa hiwalay na mga bagay, maaari mong ayusin ang iyong mga graph sa paraan na ang bawat indibidwal pagkalkula ay makakakuha ng tapos ng isang beses lamang sa loob ng mga application. Iba pang mga bagay na naka-depende sa mga resulta ng pagkalkula ay basahin ang mga resulta mula sa bagay na iyon.
Ito ay napaka-safe. Habang trad4 nagbibigay ng buong concurrency, ito ay nasa lock-free. Ito ay nangangahulugan na hindi mo kailangang mag-alala tungkol sa hindi tanyag na mga kondisyon lahi o deadlocks.
Trad4 ay inilabas sa ilalim ng LGPL. Ito ay ang parehong gcc license at gamitin glibc, at ito ay nagpapahintulot sa iyo na mag-link trad4 sa isang pagmamay-ari na sistema at release na pagmamay-ari na sistema sa ilalim ng anumang lisensya na pinili mo.
Ano ang bago sa release na ito.
- Suporta para sa mga 3rd party na aklatan ay naidagdag
- mana ng interface ay nagbibigay-daan na ngayon para minana type pagdadalubhasa.
- Abstract, kongkreto, at (kung saan naaangkop) inheritance graphs ay nabuo na ngayon para sa iyo sa .dot format ng file.
- Tampok sa release na ito ay isang pares ng mga kasabay digital signal processing apps. Additive_synth at kabaligtaran fourier_transform nito
Ano ang bago sa bersyon 3.0 Beta 02:
- Ang kakayahan na pumasa sa compiler flags (O3 , g) ay idinagdag (ikakabit sa CXXFLAGS kinakailangan).
- Isang babala tagatala sanhi ng ilang mga uri ng mga kaayusan ay maayos.
- Ang nag-iisang-sinulid mode kung saan ang master thread ay ang lahat ng gawain ay naidagdag (export NUM_THREADS = 0).
- Ang namespace t4 ay naidagdag upang maiwasan ang uri ng pangalan trad4 sagupaan na may panlabas na mga aklatan.
- Ang script benchmarker.sh ay naidagdag (tingnan ang seksyon ng Pagsusuri sa pangunahing website para sa detalye).
- Trad4 compiles ngayon sa 64-bit platform.
Ano ang bago sa bersyon 3.0 Beta 01:
- Para sa mga ito release ang precompiler ay muling isinulat upang suportahan ang nested at stand-alone na kaayusan. Ito ay din marami pinabuting mula sa isang arkitektura na pananaw.
- Two aplikasyon ay kasama sa pamamahagi. Ang una ay jpm_cds v1.1, na kung saan ay nagkaroon ng puwedeng gawin precomp_v2 maayos ngunit kung hindi man ay hindi magbabago. Ang pangalawa ay test_app, ang isang application na dinisenyo upang ipatupad ang mga precompiler, at nagpapakita kung paano gumagana ang nested mga istraktura.
- Ang ilang mga trabaho ay nananatiling bago ang 3.0 release na naka-iskedyul para sa late-Hunyo. Kabilang dito ang:
- Ayusin tagatala ng babala sa mga tiyak na kaayusan
- Beef up validation
- states Object
- Pagbutihin DEBUG sa nested mga istraktura (siguro - ito ay mapanlinlang)
- mode Single-sinulid
- Kakayahang upang pumasa sa compiler flags (O3, g etc)
- I-upgrade ang lahat ng mga aplikasyon sa v3
- Ang Manwal ay makakakuha ng isang malawak na update
- Ang website ay muling idisenyo
Ano ang bago sa bersyon 2.0.4:
- Ang mga pagbabago sa trad4 ay nakasentro sa paligid ng porting ng ang ISDA CD Standard Model sa trad4, ang resulta ng kung saan (jpm_cds) ay ipinamamahagi sa mga ito release.
- Support ay idinagdag para sa typedefs at karakter.
- Suporta para structs ay pinalawig.
- Maraming mga bug na ang jpm_cds port nakalabas ay naayos na.
- Pagpapatunay at pag-uulat sa parehong precompile at magpatakbo ng oras ay pinahusay.
Ano ang bago sa bersyon 2.0:
- Arrays ng katutubong structs ay naidagdag sa seksyon ng pub.
- Native enums at constants naidagdag.
- Bagong aplikasyon ay ngayong mas madaling gumawa sa script create_new_app.sh.
- Mga bagay ay maaari na ngayong mag-subscribe sa higit sa isang object ng bawat uri, at ito ay sanhi ng sub syntax na baguhin.
- NUM_THREADS ay exportable mula sa command line ngayon.
- Kasama rin ang mga iba't-ibang mga pagbabago na may kinalaman sa bugfixes, code clean-up, at pagpapatunay.
Ano ang bago sa bersyon 2.0 Beta 02:
- Ang pamamahaging ito ay naglalaman ng dalawang malaking database - isa para sa bawat isa application. Ang mga ito ay dapat gamitin para stress-testing at pagtatasa ng pagganap. Maaari mong untar ang file na ito sa iyong umiiral na direktoryo ng database. black_scholes_1M.db naglalaman ng mga paligid 1M black_scholes bagay. bond_risk_850k.db naglalaman ng mga paligid 850k bond_risk bagay.
Mga Komento hindi natagpuan