I ve Scale se dá psát rychlý generický kód za použití typeclass

V Javě je nutné často volit mezi tím, jestli bude program obecný nebo rychlý, generický nebo ručně specializovaný. Scala nabízí dvě funkce - specializaci a takzvané typeclassy, které v kombinaci s moderním agresivním JIT kompilátorem umožňují psát kód, který je nejen zcela generický, ale také stejně rychlý jako verze ručně specializovaná pro...

Jak velký je váš war

Dneska snad nikdo nepřibaluje do waru Servlet API, ale i tak na vás může vybafnou war o velikosti 80 MB. Proč je war vůbec tak velký a co s tím dělat?

JBUG.CZ - 13. května 2014 - PerfCake: Performance Testing Made Easy

Czech JBoss User Group Vás srdečně zve na setkání JBUG, které se koná v úterý 13. května 2014 v prostorách Fakulty Informatiky Masarykovy Univerzity v místnosti G101 Centrum Šumavská (mapa) od 18:00.Testování výkonu aplikací je často zanedbávanou, leč důležitou součástí vývoje. Něco o PerfCake.org jste se již mohli dozvědět na předcházejících...

Velikost objektů na JVM – Scala @specialized

Jednou ze zajímavých vlastností jazyka Scala je anotace @specialized. Ta zařídí, že kompilátor vygeneruje několik variant dané tříd, každá specializovaná pro některý primitivní typ a vždy se snaží použít tu nejspecifičtější instanci, aby kód nemusel ztrácet čas autoboxingem a naháněním objektů na haldě. V článku píšu, jak přesně specializace...

Úvaha nad horizontálním škálováním databází a těžkostmi s tím spojenými

Škálování databází je velké téma a já rozhodně nejsem takový odborník, abych tady rozebíral kdovíjaké detaily. Zcela jistě znáte termíny jako je sharding, o kterém psal Dagi už před 5 lety, popřípadě znáte termín partitioning, který nám nabízejí některé DB stroje „zadarmo" a jiné „za peníze„. Alternativním způsobem horizontálního škálování...

Monitorování procesů a správa paměti v JDK6 a JDK7 (2)

Ukážeme si použití profileru, jenž je přímo součástí standardní instalace JRE. Také si řekneme, proč není vhodné, aby se v často volaném kódu spojovaly řetězce pomocí operátorů + a +=. V závěru se navíc seznámíme se základními způsoby implementace správců paměti.

Je čas na MVN

Startují Vám javovské aplikace dlouhpu dobu, žerou hodně paměti a pustit jich několik je pamětový zabiják? Pokud ano, nemusí být všem dnům konec. V laboratořích firmy Sun byl, pod kódovým označením Barcelona, proveden výzkum a vývoj Multitasking Virtual Machine (dále MVN). Pravda, informace je to trochu starší nicméně zajímava, pokud jste o...

Optimalizace kódu versus efektivita vývoje

Když jsem se nedávným spotem o neoptimalizovaném kódu dotknul tohoto tématu, přinejmenším jsem tušil, že se najdou vývojáři, kteří použijí okřídlenou citaci Funguje to? Pokud ano, tak do toho dejte ruce pryč.. Tento postoj víceméně odpovídá prvnímu pravidlu optimalizace, které zní Neoptimalizujte!. Kdy tedy optimalizovat a kdy hledět především na...

Vrchol neoptimálnosti

Jsou programátorské perly, které by stálo za to někde vystavit. Jednou z takovýchto perel je i následující magický kousek kódu, při jehož čtení vám spadne brada dolu. Soukromě jsem ho nazval "vrchol neoptimálnosti" a to nejsem nějaká citlivka.

Vektorové a superskalární optimalizace pro Javu

Článek popisuje konkrétní refaktoring Javového kódu, který umožňuje využít superskalární a vektorové instrukční sady dostupné na mnoha dnešních počítačích. Autor ukazuje, že rozvinutí cyklů přináší určité zrychlení. Nicméně, dle jeho experimentů Java dosud zaostává za vektorizovaným kódem v C. Dynamické kompilátory (just-in-time, JIT) jsou...

 
strana 1/2celkem 11 položek