MapAndreas Pawn Cache -
Sn0wk - 05.08.2014
MapAndreas sem dъvidas й um dos lanзamentos mais interessantes do SA:MP nos ъltimos tempos, contudo, hб problemas em especial de memуria, que fazem torna-lo um script bastante pesado SEM CACHE para execuзгo e um plugin bastante pesado COM CACHE para memуria.
Servidores com quantidades absurdas de cуdigos requerem uma maior velocidade de processamento nos cуdigos. Й por este motivo que existe o cache da MapAndreas. Contudo, em plugin mesmo em Cache a velocidade de MapAndreas talvez nгo seja tгo satisfatуria.
Pensando assim. E pegando a funзгo de RyDeR', modifiquei algumas arrays do SA:MP para deixar o MapAndreas Cache puramente em Pawn. Dessa forma o acesso aos dados й praticamente instantвneo, podendo usar em um timer de atй 1 ms sem surtir lags no servidor. Claro que este plugin ocuparб MUITA memуria. Algo superior a 70 megabytes, mas й algo razoavelmente baixo para os computadores atuais.
Vantagem
Bem, memуria nгo vai poupar, e admito que as vantagens vгo ser sу na parte de execuзгo do cуdigo que poderб ser drбstica mente alterada. Ou seja, isto permite vocк a colocar este cуdigo em
OnPlayerUpdate por exemplo, algo que antes era atй desaconselhбvel.
Resultados
Lembrando que estou usando o plugin no modo cache, se comparar o plugin fora do modo cache, seria um absurdo de velocidade diferencial, arriscaria dizer umas mil vezes mais rбpido, literalmente.
Quote:
[22:57:42] Tempo de execuзгo Pawn Cache: 17 ms
[22:57:42] Tempo de execuзгo Plugin: 227 ms
|
Isso dб no mнnimo umas dez vezes mais rбpido
Porque criei?
No servidor zumbis, eu precisava de verificaзхes rбpidas no MapAndreas, e apenas o plugin com cache nгo estava dando conta, por isto tive que emular o arquivo no Pawn, que o acesso serб mais rбpido por conta de registra tudo numa variбvel global.
Desvantagens
Ocupa muita memуria, apesar de incrнvel velocidade.
Demora logo na inicializaзгo para poder ler o MapAndreas e passar para memуria Pawn.
A precisгo й um pouco diminuida por conta do floatround, diferencial de ~1.0 em xy, algo aceitбvel
Modo de uso
Apenas retire o MapAndreas.inc e coloque este cуdigo no lugar dele, ele automбticamente jб substitui todas funзхes do plugin por padrгo.
http://pastebin.com/8pdedaq2
Agradeзa!
Re: MapAndreas Pawn Cache -
Schocc - 05.08.2014
@first
top
Eu nгo utilizava o plugin por conta disso, nгo gostava do desempenho do plugin. Agora com uma versгo em pawn com cache fica muito bem aceitбvel ao meu projeto.
Obrigado e +rep.
Re: MapAndreas Pawn Cache -
darkxdll - 05.08.2014
Bom , como vocк mesmo disse , teremos velocidade , mais teremos tambйm um pouco menos de precisгo e tambйm pesarб mais :X.
Parabйns cara
Nunca precisei usar o MapAndreas , faz um tutorial :3
Re: MapAndreas Pawn Cache -
PT - 05.08.2014
So й uma pena perder precisгo ..
parabens bom trabalho.
Re: MapAndreas Pawn Cache -
CyNiC - 05.08.2014
Testei, em minha opiniгo й inviбvel graзas a demora intensa de carregar o mapa, eu aguardei uns 3 minutos e fechei o servidor, me coloquei na situaзгo de estar programando algo com isso incluso, se cada vez que eu precisar ligar/reiniciar o servidor pra testar demorar mais que 5 min vou levar um tempo intragбvel pra desenvolver um sistema mesmo que seja pequeno.
Re: MapAndreas Pawn Cache -
Sn0wk - 05.08.2014
Quote:
Originally Posted by CyNiC
Testei, em minha opiniгo й inviбvel graзas a demora intensa de carregar o mapa, eu aguardei uns 3 minutos e fechei o servidor, me coloquei na situaзгo de estar programando algo com isso incluso, se cada vez que eu precisar ligar/reiniciar o servidor pra testar demorar mais que 5 min vou levar um tempo intragбvel pra desenvolver um sistema mesmo que seja pequeno.
|
Isso й verdade Alan, й um loop de 6000 * 6000, ou seja 36 milhхes, pode demorar alguns minutos pra carregar mesmo, depende da sua maquina.
Valeu pela opiniгo, abraзos!