I have genomic data (500 loci) is necessary to obtain the evolution model of all this 500 loci and what program i use to do that? modeltest? partionfinder?
Modeltest, PartitionFinder and many other programs can do the job. In my experience all sufficiently large data sets justify a GTR plus gamma plus invariant model, with the addition of gamma plus invariant making a larger contribution than each step up in model complexity. For most life forms (viruses, bacteria, eukaryotes) the bigger issues are differences between gene trees relative to species tree than any minor difference that model of evolution can make. There are many reasons why different genes give different trees, including recombination, incomplete lineage sorting, differential selection pressures, horizontal gene transfer etc...
What sort of analysis are you doing? If you concatenate, then ModelTest will choose GTR. If you will be analyzing genes individually, you could pretty easily script Modeltest cross all + parsing of the outputs... Although as Brian said, GTR+I+G is likely justified, and the model choice itself will not likely make much difference in the face of gene tree discordance, unless branch lengths are important to your analysis (e.g. trying to estimate divergence times?), in which case it would probably be more appropriate to partition your dataset into genes which are better fit by different models, as the estimates of rates along branches obviously depend on the assumptions of the underlying substitution model. I would think that if you just apply GTR to everything (when some may better fit a less complex model), than your branch lengths may be biased- thus any dates you try to infer from them. But if branch lengths won't be important I wouldn't worry about it.