Stránka 1 z 1

Jak zrychlit práci/výkon ms excelu potažmo PC?

Napsal: 23 bře 2011 23:02
od vonv
Možná kravskej dotaz, takže předem se omlouvám.

...ale... mám v excelu makro, které projíždí několik desítek až stovek tisíc řádků a vyhodnocuje je a to ještě v několika stovkách až tisících kombinací, prostě spousta práce. Makro jsem se snažil napsat účelně, všechny data načíst najednou do polí a pracovat jen s polema abych se zbytečně nezdržoval.

Pc celkem mám výkonné: čtyřjádro Intel i7 950, 12 GB RAM, 64b WIN 7 Ultimate, ms office 2007

Zpracování jedné kombinace vyhodnocení dat ale na můj vkus trvá celkem dlouho: několik minut a při tom se podle správce úloh procesor celkem fláká: z vykreslovaných osmi jader jedou dvě tak napůl výkonu a to ještě s výkyvama. Celkové využití procesoru je jenom okolo 12%.Takhle se načekám spoustu času (cca 14 dní) - i když uznávám, že jsem tím makrem excelu nasadil spoustu práce.

No a kravská otázka: co všechno mám zkontrolovat jestli mám zapnuté, aby procesor jel opravdu na plný výkon a čas zpracování úlohy v excelu byl lepší? :-)

Díky.

Re: Jak zrychlit práci/výkon ms excelu potažmo PC?

Napsal: 25 bře 2011 12:17
od Adam09
Tak záleží na tom, jestli máte na W7 64bitové Office :) Aktuální verze (2010) existuje i ve x64 variantě, a z mých zkušeností zatím nejrychlejší verze Office (x64 W7 + x64 Office 2010). Potom je teoreticky možná nejvyšší rychlost, jinak k rychlosti pc - maximálně zkusit vyčištění registrá a programů po startu (CCleaner a další). Při takovýchto složitých operacích záleží jestli je zrovna aplikace optimalizovaná pro 4 jádra. Pokud ne, může se zdát že se procesor fláká, protože se nezatěžují plně všechny 4 jádra.

Re: Jak zrychlit práci/výkon ms excelu potažmo PC?

Napsal: 25 bře 2011 12:38
od vonv
Díky za reakci.
WIN jsou čistý a běhají celkem rychle, údržba je pravidelná a nové programy a kejda, co by zasvinily win instaluji jen do virtuálních pc. Office 2007, který mám, myslím nejsou v 64-bit, takže zkusím stáhnout 60denní trial office 2010 64-bit a uvidíme, jak se 64-bit projeví.


Nicméně to údajně moc (skoro vůbec) nepomůže :(

4 jádrový procesor má celkem 8 vláken (2 na jedno jádro) a excel údajně může využít a využívá jen jedno jádro. Proto se vypisuje výkon, jak jsem uvedl výše - do nějakých 16% celkem.

Napadá mě jen rozkopírovat soubor 4x a rozdělit úseky zpracovávaných dat na 4 části a zkusit je spustit současně, pak by měl procesor snad jet na plný výkon a souběžně pracovat na těch 4 spuštěných souborech. Tím by se mohla doba zkrátit. Nicméně je stěžejní upravit kód makra aby běžel rychleji - tam jsem na nějaké rezervy ještě narazil...

Re: Jak zrychlit práci/výkon ms excelu potažmo PC?

Napsal: 25 bře 2011 12:47
od Adam09
Zkusit to můžete... Jinak moje rady jsou obecné, 3/4 věcí co o Excelu píšete nerozumím :D (nic proti vám, jenom nepoužívám - nepotřebuji) každopádně přeju hodně štěstí

Re: Jak zrychlit práci/výkon ms excelu potažmo PC?

Napsal: 27 bře 2011 12:32
od vonv
... takže řešení jak to urychlit:
1. nepsat to příště ve vba pro excel :smile:
2. když už to mám v excelu, tak office 2010 je o kousek nepatrně rychlejší - při velkém množství výpočtů to ušetří pár minut, možná hodinu
3. abych vytížil o něco víc 4jádro procesor, tak jako jediná možnost mě napadlo spustit excel s makrem víckrát - což ale nejde. Makro lze spustit v danou chvíli jen jedno, i když je otevřených víc sešitů v xls, takže jsem si na tom pc pustil víc virtuálních pc (VPC) a na každým VPC spustil dané makro a šlape to.Procesor konečně pracuje více vytížený.

Celý to je ale dost nepraktický a kdyby se našel někdo, kdo poradí jak zařídit, aby vícejádrový procesor využil plně svůj výkon při práci v xls, ve kterým budu muset dělat další podobný věci, tak bych to ocenil. Rychlý CPU jsem si kupoval i z tohoto důvodu a zjišťuju, že asi zbytečně. :D

Díky.