Ir ao conteúdo
  • Cadastre-se

Guia De Memória Do Opteron


Anchluss

Posts recomendados

Olá pessoal resolvi traduzir este artigo que eu achei na Internet, mas atenção o fórum redimensiona as figuras para caberem na mensagem ou seja se não estiver vendo uma figura bas ta clicar nela. Bom vamos lá:

INTRODUÇÃO

Quando nós recebemos as especificações finais do Opteron em 2002, nos

realmente não sabíamos o que fazer com o processador. Ele não apenas

seria capaz de trabalhar em 32 e 64 bits simultaneamente, como a AMD

estava colocando a ponte norte do chipset NO processador. "Como no mundo eles retirariam isso de lá?" Nós pensamos. O que acontecera quando as DDR mais rápidas chegarem? O que acontecerá quando a DDR-II chegar ao mercado?

Isso não revoltaria os parceiros fabricantes de placas-mãe quando souberem

que a AMD está retirando um de seus maiores recursos fora da parada? A AMD

nós assegurou que tudo ficará bem - esperem e verão.

Apesar de não acreditarmos muito nessa informação, o que a AMD disse em 2002

realmente era verdade. O Opteron é o processador corporativo mas rápido do

mercado (na maioria dos benchmarks), e o que o levou ao topo é sem dúvida o

controlador de memória on die do mesmo. Mesmo o núcleo do Opteron sendo um

dos grandes fatores, o controlador de memória on-die é a chave que faz o

Opteron ir tão bem nos benchmarks. A funcionalidade do controlador de

memória dos K8 instantâneamente faz a competição com outros

(tanto do Atlhon XP como do P4) deselegante e obsoleta.

Mesmo todos os K8 (Athlon64, Athlon64 FX, e Opteron) tendo um controlador

de memória DDR integrado, o Opteron tem a maior capacidade dos três. O

Opteron não pode apenas usar a memória DDR Dual Channel como no Atlhon 64 FX,

como as suas capacidades em SMP (Multi Processamento Simétrico) abrem as portas

para o uso de multiplos bancos de memória integrada na mesma placa-mãe, o que

permite o suporte ao NUMA (Non-Unified Memory Access).

Infelizmente, com toda essa nova tecnologia, há muitas perguntas sobre como estes

novos recursos funcionarão no mundo real. E mais, muitos estão confusos sobre o que

precisam para configurar um sistema de alta-performance no OPteron sozinhos.

Então, nós fuçamos em alguns Opterons, em uma tonelada de memória

(bem, 6 GB para ser preciso), vários sistemas operacionais, e entramos numa

aventura de benchmarks incrível de uma vida. Ok, talvez não seja tão

empolgante, mas conseguimos descobrir algumas informações interessantes sobre

como o sistema de memória do Opteron funciona das configurações básicas as top de linha (inclusive NUMA). Vamos lá.

DETALHES DO CONTROLADOR DE MEMÓRIA DO OPTERON

O design do controlador de memória do Opteron não comparável a nada que o consumidor

tenha visto no mercado. O controlador de memória da AMD não é fantástico no design,

mas o que É fantástico é onde a AMD colocou o controlador de memória:

direto no núcleo do processador. Os antigos processadores da AMD junto com os atuais

da Intel, separam o processador do controlador de memória colocandos em dois locais

separados na placa mãe. Na maioria, o controlador de memória do sistema é colocado

na ponte norte do chipset da placa mãe. A conexão entre a ponte norte e o processador

é chamada FSB (Front Side Bus), mas desde que a AMD colocou o controlador de meória direto

no núcleo do processador, não há mais FSB nos Opteron / Athlon64 atuais.

Para explicarmos o controlador de memória on-die da AMD, nós fizemos este gráfico

simples comparando a topologia entre o Opteron / Athlon64 e o antigo Athlon XP.

O Atlhon XP tem um controlador de memória off-die (separado) que fica na ponte norte

do chipset na placa mãe. Como você pode ver, o processador quer obter dados dos módulos

de memória, o antigo Atlhon XP tem promeiro que se comunicar com o chipset depois com a memória,

e então faz a jornada inversa. O Opteron não tem este atraso, que toma tempo, aumentando em

todos os aspectos a performance do sistema.

pag2.gif

A escolha da AMD de integrar o controlador de memória ao processador encurta o tempo da

memória DDR, o que resulta numa oerformance de memória maior. Mas tenha em mente, apesar

de ser um pornto positivo incrivel na maioria dos aspectos da computação há alguns

pontos negativos também. Para começar, movendo o controlador de memória para dentro do processador

limita a flexibilidade da plataforma. Por exemplo, um Opteron atual não poderá ser usado numa futura[

placa mãe com suporte a DDR-II, já que o controlador integrado é compativel apenas com a DDR-I.

Ao invés de apenas trocar a placa mãe para aumentar a capacidade de memória, você também terá de

comprar um novo processador.

E mais, processadores controlador de memória on-die são muito mais difíceis para fabricar. Isso

significa que só os processadores serão mais caros de produzir, e sendo um processo de produção mais

difícil - significa que será ainda mais difícil fazer o processador rodar em altos clocks.

Até aqui, estas desvantagens não estão sendo grandes impecílios para a AMD, já que o controlador de

memória on-die provou ser extremamente eficiente e ter muita performance para oferecer.

Como as DDR-II se aproximam rapidamente nos próximos meses, será interessante a reação dos atuais donos dos Opteron / Athlon64

quando eles perceberem que não poderam migrar para as DDR-II sem comprar um novo novo processador acompanhado de

de novas memórias e placa mãe.

O atual controlador de memória on-die da AMD, suporta DDR Dual Channel até os 400 Mhz mas requer

o uso de módulos de memória resgistrada, que são mais caras e que tem desempenho inferior as DDR normais.

Um Opteron pode controlar dois canais de memória DDR-400, resultando numa largura de memória de 6.4 GB/s

por processador.

O SISTEMA DE MEMÓRIA DO OPTERON EM MULTI PROCESSAMENTO

Apesar do controlador de memória on die da AMD ajudar os single Atlhon 64, Atlhon 64 FX e Opteron

muito bem, os maiores beneficios se mostram nos Opteeons em multi-processamento. O Opteron tem se

mostrado uma solução incrivelmente robusta para worstations e servidores, um mercado que exige o poder de processamento

que só os sistemas multi-processados podem proporcionar. A escolha da AMD de usar a alta largura

de banda do Hyper Transport para interconectar os processadores, aliada ao controlador de memória

on-die do Opteron, mostram que este processador foi desenvolvido para o mercado top de linha em primeiro

lugar. Os antigos Atlhon MP foram baseados nos processadores para desktops e PODERIAM ser usados

em multi-processamento, mas não era o foco do processador em questão.

Já que cada processador tem seu próprio controlador de memória embutido, quando utiliza dois

Opterons no mesmo sistema, você está efetivamente usando dois controladores de memória também.

E cada um destes controladores de memória tem seu próprio sitema DDR Dual-Channel, e pode rodar

num banco de memória completamente diferente. Isso significa que cada processador tem sua própria

triha com os módulos de memória, e o processador não tem que lutar por largura de banda da memória.

Para demonstrar o ponto, eu fiz este gráfico comparando um sistema de memória Dual Opteron e um

Dual Xeon.

<div class='bbimg'>Imagem postada pelo usuário

Como você pode ver, cada processador tem picos de 6.4 GB/s de largura de banda de memória para utilizar.

Isso significa que com dois processadores o pico da banda de memória do conjunto cresce pra 12.8 GB/s. E fica ainda

melhor, se você for para um sistema de 4 processadores pula para uma largura de banda de 25.6 GB/s,

ou então no auge para uma configuração de 8 opterons, você pode acumular uma banda maçica de 51.2 GB/s

disponíveis para o uso. Isto é poder de super computador, pessoal.

Para atingir os picos de largura de banda da memória, você precisa ter 2 pentes de memória para

cada processador, o que significa que sistemas bi-processados para atingirem seu máximo precisarão de pelo

menos 4 pentes de memória instalados. Apesar da situação parecer fantástica para os sistemas top,

alguns (inclusive nós) pedimos a AMD e seus parceiros por sistemas de baixo custo para a memória.

Por sorte, o controlador de memória do Opteron é incrivelmente flexivel, e alguns parceiros da

AMD criaram sistemas dual Opteron de baixo custo onde eles usam os bancos de memória de apenas

um processador. Estas placas mãe são comunmente chamadas de "Shared Memory Bus"

(Barramento de Memória Compartilhado). Ao invés de cada processador ter seus próprios bancos de memória,

os processadores se comunicam um com o outro através dos canais do Hyper Transport, e permitem que o

processador secundário busque dados dos bancos de memória do processador primário.

<div class='bbimg'>%7Boption%7Dhttp://cedaspy.com.br/spe/shadowwarrior/pag3.2.gif' border='0' alt='Imagem postada pelo usuário' /></div><div class='bbimg'>%7Boption%7Dhttp://www.gamepc.com/images/labs/rev-opteronmemory-smpgraph2.gif' border='0' alt='Imagem postada pelo usuário' /></div>

Barramento de Memória Dedicada / Barramento de Memória Compartilhado

Estivemos olhando nos sistemas de memória compartilhada em reportagens anteriores e nós descobrimos

que em situações gerais de workstation, tendo que dividir apenas um banco de memória não afeta a

performance na prática radicalmente. Claro, que memórias dedicadas tem a preferência, já que elas

permitem uma maior largura de banda. A memória compartilhada não é compatível com o NUMA

(Non-Unified Memory Access) que explicaremos depois. Aqui está um rápida lista de placas mãe

Dual para o Opteron e quais utilizam a memória dedicada e quais utilizam a memória compartilhada.

%7Boption%7Dhttp://cedaspy.com.br/spe/shadowwarrior/pag3.3.jpg' alt='pag3.3.jpg'>

Link para o comentário
Compartilhar em outros sites

OS VÁRIOS NIVEIS DE VELOCIDADE DA DDR NO OPTERON

O controlador de memória on-die do Opteron é muito flexivel em termos de clock das memórias DDR.

Todos os Opterons, do mono-processado à versão com 8 processadores suportam DDR-400 Dual Channel.

Apesar da primeira geração dos Opteron ser anunciada como suportando apenas até o DDR 333,

eles apenas fizeram isso porque não havia memórias Registradas/ECC válidas (apenas genéricas) no mercado.

A primeira geração de Opterons suporta DDR 400 muito bem - o controlador de memória foi desenhado

para elas desde o começo.

O processador pode suportar memória DDR a partir das DDR 200. O Dual Channel DDR 400 está apto

a uma largura de banda de 6.4 GB/s, o DDR 333 de 5.4 GB/s e o DDR 200 de 3.2 GB/s. Para vermos

o quanto o clock da memória afeta o desempenho sintético e na prática, nós pegamos vários módulos

de memória ECC de diferentes clocks e testamos em nosso sistema dual Opteron 248 / Thunder K8W.

Os módulos foram utilizados em Dual Channel e usando um processador.

pag4.1.jpg

pag4.2.jpg

Como você pode ver, a performance balança muito bem num Opteron com vários niveis de memória.

Em nossos testes sintéticos de memória certamente aumentam em termos de performance, mas em um

sistema monoprocessado em DDR Dual Channel, o Opteron mostra menos eficiência conforme o aumento

do clock. O pico nos níveis de largura de banda da memória está no aumento do clock dos módulos

de memória mas o Opteron está mal aproveitando a largura de banda extra.

Desde que o clock da memória afeta a performance global, ambos os nossos testes na prática viram

melhora na performance. No Photoshop nós vemos uma redução de 6,7 % no tempo para terminar nossa suite

de testes, e o Unreal Tournament 2004 está apto para bater nossos mais rápidos framerates com

as memórias DDR de clock mais alto. Claro, se você puder é preferível utilizar as DDR 400 no Opteron,

já que a diferença de preços entre os módulos é pequena. As diferenças realmente não são enormes ou seja

se você já estiver usando memórias mais lentas ao fazer o upgrade para as DDR 400 você verá apenas

um pequeno aumento na performance.

Link para o comentário
Compartilhar em outros sites

MEMÓRIA GENÉRICA OU DE MARCA?

Uma das perguntas mais comuns que recebemos aqui é "Qual é a MELHOR memória para o Opteron?".

Atualmente há apenas alguns fabricantes de memória DDR 400 registrada, então o campo de jogo é

bem menor comparado as memórias DDR comuns do Pentium 4 e do Athlon 64 non-FX. Dois dos melhores

fabricantes de pentes de memória DDR resgistrada são Corsair e Samsung, os quais compararemos hoje.

A Corsair é conhecida por fabricar memórias "bonitas" e de excelente overclock com sua linha

XMS. Eles estão produzindo módulos de 512 e 1GB DDR 400 para o Opteron, mas eles rodam em

latências diferentes. Os módulos de 512 rodam a latências menores (CAS 2-3-2-6), enquanto os

de 1 GB rodam em latências mais altas (CAS 3-3-3-8). Isso significa que os módulos de 512MB

funcionaram bem mais rápido que os de 1 GB se levarmos em contas apenas este fator. A Corsair

rotulou os módulos com a sigla LL (Low Latency) "Baixa Latência" fixada no codenome, o que permite

aos compradores verem quais módulos tem a latência menor. E mais, a Corsair colocou nas etiquetas

as latências da memória o que torna tudo muito claro.

pag5.1.jpg

Módulo de 512MB de memória registrada DDR 400 da Corsair XMS3200LL-PT

pag5.2.jpg

Módulo de 1GB de memória registrada DDR 400 da Corsair XMS3200

Nosso pente de memória DDR resgistrada da Samsung é de aparência bem mais singela. Outros

fabricantes de memória compram módulos Samsung e apenas "colocam" seus nomes neles. A Samsung

não precisa de nomes "bonitinhos" e coolers e isso possibilita que seus preços em qualquer

lugar do mundo sejam 20 - 30% menores que os módulos da Corsair. A maioria das pessoas nos

pergunta se há uma diferença exorbitante de desempenho entre as duas, tendo base na grande

diferença de preço entre elas.

pag5.3.jpg

Módulo de memória DDR 400 registrada da Samsung

Para comparar os módulos DDR, nós os configuramos em single channel para eliminar qualquer

diferença de desempenho causadas pelas suas capacidades em dual channel. Nós comparamos

dois dos aspectos mais importantes da memória, largura de banda e a latência em alguns testes

sintéticos no nosso sistema Opteron 248 / Thunder K8W.

pag5.4.jpg

pag5.5.jpg

Como você pode ver, a o módulo da Corsair, XMS3200-LL, obteve o score mais alto em banda de memória,

é o mais eficiente dos três e tem os timings mais baixos. Isto era de se esperar devido as

latências que este módulo da Corsair usa. Ainda, a performance é incrivelmente pequena entre os

módulos high-end da Corsair e os "genéricos" da Samsung. Você está olhando para 2 % de diferença

de desempenho de memória, o que não muda nada na prática.

Link para o comentário
Compartilhar em outros sites

O ÁS DE OUROS - NUMA

NUMA (Non-Uniform Memory Access) é uma ferramenta imprescindível quando falamos do Opteron, especialmente

para workstations high-end e servidores. O ponto é, o que é NUMA?, o que isso faz? e porque é tão

importante?

O NUMA é uma tecnologia que foi originalmente desenvolvida para supercomputadores e clusters de

renderuização permitindo o computador se comunicar com a memórias por barramentos múltiplos. Por

exemplo, num simples sistema bi-processado com suporte a NUMA um processador pode buscar dados

nos bancos de memória do outro e vice-versa. Em um sistema não-NUMA cada processador só pode

acessar seu próprio banco de memória. A tecnologia NUMA é um componente fundamental nos

sistemas Opteron de 4 e 8 processadores mas já que o Opteron compartilha a mesma arquitetura

com todos os seus modelos, o NUMA está disponível a partir dos sistemas bi-processados.

Por isso, o NUMA permite sistemas multi-processados a se comunicar melhor. Isso pode levar

a maior performance e picos de largura de banda muito maiores. Na verdade, apenas num sistema

com suporte a NUMA os picos de largura de banda do Opteron serão atingidos. Nós recebemos

vários pedidos de leitores de nossos artigos anteriores sobre o Opteron para testarmos

a capacidade do NUMA no Opteron. Então, nos preparamos para fazê-lo.

Para habilitar o NUMA em um sistema são necessários, dois Opterons, pelo menos dois módulos

de memória DDR (um para cada banco de memória), uma placa mãe com bancos de memória independentes

(veja no primeiro post) e um sistema operacional que suporte NUMA. Se qujalquer um destes requisitos

faltar, você não poderá aproveitar os benefícios do NUMA.

Como o NUMA funciona tanto em hardware tanto em software, o SO precisa ter suporte ao NUMA.

Atualmente, os únicos sistemas disponíveis com suporte ao NUMA são: Windows 2003 Server Enterprise,

Windows 2003 Server Data Center, e as versões correspondentes do Linux. Por sorte, os novos

Windows XP 64-bit Edition e Windows 2003 Server 64-bit Edition terão suporte ao NUMA. Após o

lançamento desses sistemas operacionais, nós veremos o desdobramento do NUMA em larga escala.

Há rumores que o Windows Longhorn que virá terá suporte nativo ao NUMA em todas as suas versões,

mas isso ainda terá de ser confirmado. Nós utilizamos o beta público do Windows XP 64 Bits em nossos

testes com o NUMA. Mesmo, sendo beta, a implementação do NUMA parece funcionar perfeitamente.

<div class='bbimg'>Imagem postada pelo usuário

Com o hardware e software compátiveis com NUMA, a largura de banda de mais de 10GB/s é possível.

NUMA vs não-NUMA

Para ilustrar os benefícios que o NUMA pode trazer ao sistema, nós usamos configurações de memória

semelhantes em nossa placa mãe para dual Opteron . Em nosso sistema NUMA foi colocado um pente em cada banco de memória

para usarmos o controlador de memória on-die do Opteron e o NUMA mas nós só usamos 1 processador.

Como nós mencionamos antes, estes testes serão feitos no Windows XP 64 Bits. Nas versões normais

normais deste sistema disponíveis atualmente você não verá variações no desempenho já que ele

não oferece suporte ao NUMA.

%7Boption%7Dhttp://cedaspy.com.br/spe/shadowwarrior/pag7.1.jpg' alt='pag7.1.jpg'>

Mesmo os números de memória anteriores do Opteron serem impressionantes com o NUMA ativado,

a largura de banda do Opteron decolou. O NUMA permite ao sistema operacional fazer uso total

da interface DDR 400, conseguindo níveis de largura de banda muito superiores comparados com

os tradicionais.

Não apenas os níveis de largura de banda são maiores, mas a eficiência da memória também decola.

Como vocês lembrar o pico de memória para um processador trabalhando em DDR 400 Dual Channel é

de 6.4 GB/s. Com o NUMA abilitado o sistema conseguiu utilizar 6.1 GB/s da banda disponível

o que são 96 % de eficiência muito mais do que o normal. Com o nosso sistema bi-processado em

dual-channel, o pico de banda da memória é de 12.8GB/s (6.4 GB/s para cada processador). Nosso

sistema foi capaz de utilizar 10.0 GB/s da memória o que é menor quando comparado com o nível mais

baixo tradicional. Desta vez este nível de banda da memória não é de espantar.

pag7.2.jpg

O aumento da banda de memória e sua eficiência levam ao aumento da performance? As vezes.

Os sistemas NUMA freqüentemente tem sua latência de memória maior se comparados ao sistemas

não-NUMA o que diminui a performance se o aplicativo utilizado faz curtas leituras na memória.

Se o aplicativo que você usa pode faz uso da banda extra que o NUMA fornece você certamente

terá um desempenho melhor no dia-a-dia. Nós não temos aplicativos que utilizem uma banda de

memória de mais de 10 GB/s então com certeza nós não estamos vendo todo o poder que o NUMA

oferece com estes benchmarks básicos UT 2004 e Photoshop.

MEMÓRIA ESCAMOTEÁVEL[/color

A maioria do servidores e workstations são capazes de utilizar memória entre 8 e 16 GB,

impressionante para placas mãe que são vendidas por menos de US$ 500,00. Com a nossa

Tyan Thunder K8W nós decidimos colocar vários módulos de memória para ver o quanto a performance

aumenta com o aumento da memória. Nós usamos módulos Corsair XMS3200 neste teste, combinando

módulos de 512 MB e 1 GB para atingir as configurações que nós queríamos. Também, já que

estamos usando o Windows XP 64 Bits o numa se tornou um peça pois nós nunca tivemos uma configuração

que utizasse a memória em ambos os processadores.

pag8.1.jpg

Como você pode ver, a banda e a eficiência da memória dão saltos gigantescos quando o NUMA está

ativado em relação ao normal. Porém, quando atingimos mais de 4 GB de memória, nós começamos

a ver uma lenta queda da banda e eficiência da memória assim que colocávamos mais memória. Como

mais memória é adicionada ao sistema a latência aumenta e o números caem levemente. Porém,

esta queda é muito pequena, e o Opteron mostra se dar muito bem com muita memória.

pag8.2.jpg

O Unreal Tournament mostra alguns números variados, mesmo com 512 MB de memória nossos testes

mostraram leves benefícios quando mais memória era adicionada. O Photoshop mostra ganhos reais

de performance dos 512 MB aos 2 GB, com o aumento da memória os testes com filtros foram bem mais

rápidos. Porém com mais de 2 GB de memória RAM, nós vimos um ganho quase zero em performance

com excessivas quantidades de memória, mesmo assim nossos tempos melhoraram um pouco.

CONCLUSÃO

Com o lançamento do Opteron, nós não estamos totalmente aptos a saber do que ele é

capaz, o que nós conduz a subestimá-lo. A plataforma do Opteron é moderna e os

pentes de memória e sistemas operacionais atuais não estão tendo grandes vantagens

dos recursos que o Opteron tem a oferecer deixando memória sobrando para

aumentos de desempenho fantásticos.

Por exemplo, a primeira vez que fizemos um artigo com um Opteron em nossos laboratórios,

nós fomos forçados a utilizar memórias DDR 333 com altas latências e um sistema operacional

sem suporte ao NUMA o que deixava o pico da memória em 3 GB/s. Hoje o Opteron pode usar memórias

DDR 400 com baixa latência, complemantados por sistemas operacionais com suporte ao NUMA o que

faz o pico de banda da memória passar dos 10 GB/s. Essa capacidade de processamento e memória

é simplesmente impressionante para workstations e servidores medianos. Quando traduzimos isso

para a prática os benefícios vão depender do uso mas não há muitas desvantagens em ter muita banda

de memória exceto se houver alta latência comparadas com sistemas não NUMA.

Por flexibilidade limitada do processador Opteron, não há nada do que reclamar da implementação

deste processador. A AMD desenvolveu um controlador de memória que suporta baixas latências, altos clocks

e bus de memória dedicado ou dual-channel. Nós estivemos elogiando as escolhas da AMD no momento,

e agora nós podemos ver o que o NUMA traz na prática assim o pacote completo é ainda mais atrativo.

Mesmo o NUMA ainda sendo para o mercado topo de linha, é mais um recurso positivo que vai pesar

na balança do Opteron.

Os efeitos positivos deste projeto foram provados e agora a AMD está caminhando para integrar o controlador

de memória a todos os seus processadores K8, do básico ao top. Está bem claro que a AMD está na direção

certa e não será surpresa se a Intel seguir o mesmo caminho em seus próximos processadores. A Intel

sem dúvida já percebeu as vantagens deste projeto, e mesmo não sendo o estilo dela usar tecnologias

que a AMD já adotou, eles certamente irão considerá-las.

Tradução do artigo: The Opteron Memory Guide : DDR’s Best Implementation Yet

Link para o comentário
Compartilhar em outros sites

  • 4 meses depois...

Por favor, alguem me ajude! Nem a AMD me responde. Comprei nos EUA um processador Opteron 240 com placa ASUS SK8N. Mas alguns falam que a memória tem de ser registrada e outros dizem que funciona comum. Queria ddr400 pc3200. Alguem sabe?

Obrigado.

Link para o comentário
Compartilhar em outros sites

  • 5 meses depois...
Postado Originalmente por detk@16 jul 2004, 15:59

Por favor, alguem me ajude! Nem a AMD me responde. Comprei nos EUA um processador Opteron 240 com placa ASUS SK8N. Mas alguns falam que a memória tem de ser registrada e outros dizem que funciona comum. Queria ddr400 pc3200. Alguem sabe?

Obrigado.

Acredito que memos, não registradas, funcionem perfeitamente !

Mas só testando !

:joia:

Link para o comentário
Compartilhar em outros sites

  • 7 meses depois...

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...