Será verdade?

Software e Hardware para linha ARM

Moderadores: 51, guest2003, Renie, gpenga

Mensagempor chipselect » 04 Fev 2007 20:20

do link...
" It's no coincidence that RISC processors have bigger on-chip caches than CISC processors; they need them more. Combine fast clock speed with slow memory and poor code density and you have a recipe for a real performance bottleneck"

OK, o Pentium 4 E6600 tem 2 núcleos de processamento e a mixaria de 4MB de cache L2, fora a cache L1... é CISC não é mesmo? e atinge quase 72W... Então se ele não fosse CISC teria quanto de cache? 1G? O Pentium 4 HT tem 1MB de cache L2... pra que tanto se ele é CISC? Será que ele é PURAMENTE CISC?

O próprio MCU 8051 não é CISC? E não tem alguns micros novos compatíveis com essa linha mas com maior poder de processamento, e que convenientemente utiliza um núcleo RISC interno? Por que será né? Pode mexer no que for, um 8051 será sempre CISC... ou não?

Hoje não se costuma diferenciar ou adotar apenas UMA tecnologia, utiliza-se todas que der, até pra fazer uma CPU. Uma coisa é falar na arquitetura RISC e CISC pura, outra é comparar produtos comerciais, deve estar ocorrendo um equívoco aqui.

Viktor, você citou questões de DESEMPENHO ser o porque a Intel "escolheu" CISC pro Pentium 4.

A resposta é:

A Intel não escolheu projetar o Pentium 4 externamente sendo CISC. Ela foi OBRIGADA para manter retrocompatibilidade de software, e conseguiu agregar desempenho não porque a CPU é CISC, mas porque também utiliza núcleos de processamento que são RISC ou parecidos, e tudo mais que deu pra usar.

Todos citam o Pentium 4 como CISC de alto desempenho, mas ele só é CISC externamente... seria uma comparação inadequada classificá-lo como puramente CISC e comparar com um RISC. Essa comparação existe hoje só em assuntos acadêmicos, comercialmente vale mais pegar tudo e usar.

Ah.. o problema de bandwidth de memóra tem também nos CISC... só que é de maneira diferente, complica o decodificador e o pipeline (que se torna mais caro, longo e complexo pra ter um desempenho próximo que o do RISC ou, se custo é impotante, o pipeline e decodificador fica muito mais lento que o pipeline de uma CPU RISC... já que risc não precisa decodificar instrução, só a CISC tem esse passo extra. Pentium 4 tinha quase 20 estágios de Pipeline... uma instrução passa por todos eles p/ ser executada. Na verdade o decodificador de instrução do RISC é muito simples e rápido se comparado com o do CISC.

Se custo não for problema, cria memória de sistema dentro da CPU com a tecnologia da cache... mesma frequência da CPU... nesse caso quem ganha em velocidade? a arquitetura RISC ou CISC? Lembrem-se que a memória cache tem tecnologia e velocidade para trabalhar na velocidade do núcleo de processamento, mas isso é dentro da CPU. Nesse caso some problema de bandwidth de memória, fica só a densidade de código, que não influencia no desempenho, só no tamanho da memória necessária.

Pentium (32 bits) tem barramento de memória de 64 Bits... a SDRAM é uma memória inteligente e pode transferir dados em modo de rajada a partir de um ponto inicial. São as técnicas utilizadas tanto por x86 "CISC" como por "RISC" pra minimizar a latência de memória.

RISC é uma arquitetura naturalmente mais veloz que a CISC, mas são concorrentes? Se forem, o Pentium 4 é meio um vira-casaca.

Dá até pra discutir muito mais sobre esse assunto, principalmente pra diferenciar arquitetura pura e arquitetura de processadores comerciais, mas acho que isso deveria ser feito em outro tópico, tipo o do link mesmo:

"CISC: not dead yet"

Afinal, o que o artigo relata é que CISC ainda vai continuar existindo, o que é correto, senão o PC acaba, mas o mesmo artigo não cita nenhuma CPU CISC que não utilize nada da RISC dentro dela, exceto pelas CPUs antigas (e lentas).
chipselect
Word
 
Mensagens: 744
Registrado em: 16 Out 2006 18:50

Mensagempor chipselect » 04 Fev 2007 20:54

Processamento de sinal necessita de velocidade... a analog devices usa CISC ou RISC? O quesito principal nesse caso não seria desempenho?

"Blackfin Processors include a high performance 16-/32-bit embedded processor core with a 10-stage RISC MCU/DSP pipeline, variable length ISA for optimal code density, and full SIMD support with instructions for accelerated video and multimedia processing"

http://portal.acm.org/citation.cfm?id=623739

"
The characteristics of benchmark digital signal processing (DSP) algorithms are examined. These characteristics are used to suggest the features of an ideal DSP architecture, which is compared to current DSP and reduced instruction set computer (RISC) architectures. Timing comparisons taken from data books and research show that several on-the-market RISCs have a DSP performance close to or better than some DSP chips. Analysis of these DSP and RISC architectures leads to the suggestion of an ideal low-cost RISC DSP chip.
"

Se for pra ficar mexendo com dados de 8 bits, usa um RISC de 8 bits... se achar um. Idem pra 16 bits.
chipselect
Word
 
Mensagens: 744
Registrado em: 16 Out 2006 18:50

Mensagempor chipselect » 04 Fev 2007 23:33

Para deixar mais claro o que o Pentium 4 atual é:

http://www.clubedohardware.com.br/artigos/872
"e a década de 90 pelas das máquinas RISC (incluímos ai as máquinas RISC mascaradas de CISC: Pentium Pro e o Pentium II)"

http://www.ic.unicamp.br/~rodolfo/Curso ... ntium4.pdf
"O Pentium 4 possui um decodificador (Decoder) híbrido
CISC/RISC, capaz de receber instruções CISC e convertêlas
para uma seqüência de instruções RISC. Instruções RISC são basicamente
instruções simples e a idéia por trás de processadores que
usam esse tipo de instrução (como o MIPS por exemplo) é a de
que a CPU usa, na maior parte do tempo, apenas algumas poucas
instruções e a implementação de uma CPU desse é mais
simples[7]"

http://en.wikipedia.org/wiki/Pentium_Pro
"The Pentium Pro (P6) core featured an array of advanced RISC technologies, although it wasn't the first x86 CPU with such approach -- before it, the NexGen Nx586 processor already utilized internal x86 translation to its own proprietary RISC86TM instruction set."

http://en.wikipedia.org/wiki/X86
During execution, current x86 processors employ a few extra decoding steps to split most instructions into smaller pieces, micro-ops, which are readily executed by a micro-architecture that could be (simplistically) described as a RISC-machine without the usual load/store limitations."

Acho que isso deixa claro que Pentium 4 não é puramente CISC né? A arquitetura externa só é considerada CISC e a comparação com uma CPU RISC pura, para ser mais adequada, não deve considerar o Pentium 4 atual como CISC nem como RISC, pois tem as duas coisas dentro dele.
chipselect
Word
 
Mensagens: 744
Registrado em: 16 Out 2006 18:50

Re: Será verdade?

Mensagempor msamsoniuk » 05 Fev 2007 12:09

KrafT escreveu:Será que foi um milagre?

"The first ARM chip was designed by Steve Furber and Sophie Wilson at Acorn Computer in 1983-1985. No resources were available and a simulation was written in BASIC. The resulting chip had less than half the number of transistor of a Motorola 68000 and beat it in every way, even software division on the ARM was faster than the hardware division of the 68000."

http://wiki.4hv.org/index.php/ARM

Ou "and beat it in every way" não significa que a versão jurassica do ARM era melhor em tudo frente o 6800?


jah por esse tipo de afirmacao vc pode notar que existe algo errado: comparar um processador RISC de 1985 com um processador CISC cujo projeto iniciou em 1976 me parece bastante irracional. se vc nivelar a tecnologia para a mesma epoca, vai encontrar o 68020 e 68030 contemporaneos aos primeiros ARM e a disputa nao vai ser tao facil.

em segundo lugar, ateh a decada de 90 nao existia tecnologia de compiladores capaz de tirar proveito das vantagens tecnologicas de processadores RISC, motivo pelo qual um 68020 de 1982 e um 68030 de 1987 ainda batiam com facilidade os primeiros processadores RISC, perdendo apenas em exercicios puramente teoricos.

com o desenvolvimento dos compiladores, os processadores RISC passaram a apresentar performance efetiva melhor, mas eliminar o microcodigo e adotar as mesmas otimizacoes nao era algo tao dificil e tanto 68k quanto x86 modernos nao ficam para tras comparados com arquiteturas puramente RISC.

em resumo, as afirmacoes dos amantes do ARM sao apenas puro sensacionalismo. talvez por esse motivo as pessoas serias prefiram 68k, coldfire e powerpc ;)
Avatar do usuário
msamsoniuk
Dword
 
Mensagens: 2935
Registrado em: 13 Out 2006 18:04

Mensagempor chipselect » 05 Fev 2007 13:29

Concordo que comparar 68K com ARM seja injusto por causa da idade, mas não acho justo comparar aquele primeiro ARM com o 68030 senão deveria entrar na lista os processadores SPARC (RISC) de 1985~1989.

Quais seriam os critérios para comparar duas CPUs? Preço? Data de lançamento? Aplicação? Um sistema com o 68020 era na mesma faixa de preço daquele ARM? Sinceramente eu não sei simplesmente porque não conheço esses ARMs... o primeiro sistema computacional com qual trabalhei era um XQ3 (68020) que custava a bagatela de U$25.000,00.

Modificar os CISCs pra eliminar o microcódigo não é impossível, mas o clock tem que subir, pra manter o desempenho, e no pé que tá e sempre esteve a concorrência de processadores, isso seria realmente um problema. Neste aspecto o RISC é mais eficiente.

Aumento da complexidade de software é algo já previsto na computação faz tempo.

Comparar processadores não é uma tarefa fácil, mas não concordo plenamente com o artigo do link
http://www.embedded.com/story/OEG20030205S0025

Primeiro: problemas de alinhamento também tem nos CISC. Tem nos x86 desde que resolveram lançar o 386 (cisc puro). Hoje quando compilo um software pra PC, tenho que escolher qual tipo de alinhamento desejado, balanceando desempenho e tamanho de código.

Segundo: pegar determinadas instruções do assembly de um processador e sair falando que ele é mais rápido pq leva mais tempo pra fazer a mesma tarefa em outro processador não é correto, senão eu posso provar que o 80286 da Intel é mais rápido que o 80386 de mesmo clock, pois existe uma instrução em assembly que no 286 leva um ciclo de clock a menos que no 386...

Terceiro: as análises feitas no artigo não levam em conta o sistema, foca apenas em detalhes pontuais. Desative o cache L1 e L2 até de um CISC como o 486 pra ver se ele não vira carroça por causa da memória.

Existe um artigo rebatendo o link citado, no mesmo site:
http://www.embedded.com/showArticle.jht ... D=10700117

Quanto aos processadores ARM, acho que já está se tornando algo maduro para ser utilizado, mas que o PowerPC (também RISC....) é mais interessante, isso é.
chipselect
Word
 
Mensagens: 744
Registrado em: 16 Out 2006 18:50

Anterior

Voltar para ARM

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 1 visitante

cron

x