Pipeline

Novidades, dúvidas, respostas, problemas...

Moderadores: Administradores, Moderadores

Pipeline

Mensagempor D12 » Domingo Mai 30, 2004 21:00

O que é um Pipeline e para que serve?
AMD 64 3200+ Mb asus k8V SE Bios actualizada
512 Mb drr 400 mhz kingston
Asus Radeon 9600 XT@ default 497/594
Disco Rígido de 120GB Sata
3Dmark 2003 - 4203 3d marks
D12
Membro de Ouro
Membro de Ouro
 
Mensagens: 798
Registado: Sexta Mai 07, 2004 8:41

Mensagempor Jet_Black82 » Domingo Mai 30, 2004 22:30

um pipeline (pelo k eu entendi a ler a Exame Informatica) são as etapas (modulos logicos) pelo qual um processador passa para cumprir cada instrução. Entenda-se por instrução, um conjunto de etapas relativas a 32 bit's pk ha instruções de 64 bit's e mais (n fikes assustado pk uma instrução de 64 bit's é partida em modulos de 32 bit's para poder ser precessada, neste caso, em 2 fases)

Pipelines mais curtos significa k para ser cumprida uma instrução são necessários menos clocks do que em pipelines longos.

trocando as coisas por miudos, um pipeline basicamente é o nº de clock's k o processador dispende para cumprir uma instrução(32bit's)

Cumps Jet
<_/\_> Barton 2800+
<_/\_> ASUS A7N8X Dx
<_/\_> twintech 7600GT
<_/\_> 2x512 DDR400@400 (OEM)
<_/\_> Seagate 7200.10 320GB
<_/\_> Powered by BeQuiet Colorline 450W ATX 1.3
Jet_Black82
Membro de Ouro
Membro de Ouro
 
Mensagens: 613
Registado: Sábado Abr 24, 2004 11:33
Localização: Covilhã

Mensagempor dbbm » Domingo Mai 30, 2004 23:49

Acho que o Jet_Black82 explicou muito bem, não sei explicar melhor, mas só quero avisar que isso do pipeline pode depender do contexto. Por exemplo, na programação com directx existe o "rendering pipeline", que, de forma análoga ao que Jet_Black82 explicou para processamento de instruçoes por parte do cpu, é uma série de fases de processamento de algo , neste caso de que falo, da transformação de vertices imaginarios para pixels no monitor.
dbbm
Aprendiz
Aprendiz
 
Mensagens: 47
Registado: Quinta Mai 27, 2004 13:34

Mensagempor expresso » Segunda Mai 31, 2004 8:59

O que foi dito em cima já é uma explicação apróximada, agora vou eu tentar fazer a minha aproximação por outras vias.

Resumindo e baralhando, o pipline é como uma linha de montagem em que cada àrea do processador vai trabalhando cada uma das sub-instruções de uma instrução do cpu. O que isto permite é que , supondo que cada instrução está dividida em 5 sub-instruções, a cada ciclo de relógio seja conluida uma instrução inteira ( isto supondo que está tudo a correr lindamente e não houve uma instrução de"jump" pelo meio, etc).
Caso não funcionasse como pipeline terias 1 instrução a cada 5 ciclos. Com o funcionamento em pipeline cada parte do cpu pode encarregar-se de uma sub-instrução, o que significa que podem estar a correr várias intruções em simultaneo no cpu.
É claro que isto não é tão simples como isto, existem vários condicionamentos ( sub-instruções que precisam do resultado de outras sub-intrução que ainda nem foi executada , etc).
Espero ter ajudado.

Saudações
expresso
Membro de Prata
Membro de Prata
 
Mensagens: 126
Registado: Sábado Mai 15, 2004 21:03
Localização: Oeiras

Mensagempor alfatek » Segunda Mai 31, 2004 16:27

[url=http://www.amazon.co.uk/exec/obidos/ASIN/1558607242/hardwarcompt-21]Computer Architecture: A Quantitative Approach
Imagem[/url]

:D

http://computer.howstuffworks.com/microprocessor9.htm

Quando tiver tempo mando o meu bitaite ;)
alfatek
Administrador
Administrador
 
Mensagens: 3257
Registado: Sábado Abr 06, 2002 18:28
Localização: Coimbra

Mensagempor D12 » Segunda Mai 31, 2004 19:33

a nova X800 XT tem 16 Pipelines. foguu!!!! então tem um clock elevado pleo que percebi, né?
AMD 64 3200+ Mb asus k8V SE Bios actualizada
512 Mb drr 400 mhz kingston
Asus Radeon 9600 XT@ default 497/594
Disco Rígido de 120GB Sata
3Dmark 2003 - 4203 3d marks
D12
Membro de Ouro
Membro de Ouro
 
Mensagens: 798
Registado: Sexta Mai 07, 2004 8:41

Mensagempor expresso » Segunda Mai 31, 2004 23:00

Não faço a mínimia ideia se tem um clock elevado ou não.
O que o pipeline faz não é directamente ( nem sei se o faz directamente - não conheço aprofundadamente essa treta :P ) aumentar o clock! O que se consegue com o pipeline é um melhor aproveitamento de cada ciclo de relógio. Não se pode dizer à partida que quanto mais pipelines melhor, depende de muita coisa!! até porque as pipelines apesar de estarem lá , nao quer dizer que sejam sempre bem utilizadas (depende muito das instruçoes do processador e do micro-código utilizado, etc) . É a mesma coisa que dizeres que um processador que trabalha a 1800Ghz é melhor do que um a 1000 Ghz
Em resumo...tudo depende de muita coisa e MAIS não quer dizer que seja melhor...depende de como é aproveitado :wink:
expresso
Membro de Prata
Membro de Prata
 
Mensagens: 126
Registado: Sábado Mai 15, 2004 21:03
Localização: Oeiras

Mensagempor Jet_Black82 » Terça Jun 01, 2004 22:17

16 pipelines ker dizer k ao mmo tempo (no mmo ciclo de clock) pode tar a fazer 16 "sub-instruçoes" ou sub tarefas duma instrução só, ou seja acaba por ser mais rapido 16 vezes, isto kuando é possivel efectuar 16 sub-tarefas ao mmo tempo, pk ha limitaçoes a nivel de hardware.
por exemplo

a acção de ler uma instrução k ta na RAM é dividida em varias, tipo, começa por:

1- mandar um sinal a RAM a "dizer" k vai ler
2- escrever essa instrução num buffer
3- escrever no registo de instrução
4- intrepretar o k a instrução vai fazer

and so on and so on a isto xama-se fetch fase k é a fase de preparação da instrução

ora, se tivessemos 2 pipelines poderiamos mandar xcrever no buffer e no registo de instrução ao mmo tempo, xama-se a isto paralelismo de informação, e assim poupavamos 1 clock passando a fetch fase a durar 3 clocks em vez de 4, para isto é k servem os pipelines.

kuando é possivel usam-se os 16 pipelines para fazer 16 sub instruçoes ao mmo tempo e kuando é possível, no exemplo anterior n é possivel intrepretar a instrução directamente da RAM, logo, é preciso passar pelo menos nestas etapas em k cada etapa demora 1 clock.

Cumps Jet
<_/\_> Barton 2800+
<_/\_> ASUS A7N8X Dx
<_/\_> twintech 7600GT
<_/\_> 2x512 DDR400@400 (OEM)
<_/\_> Seagate 7200.10 320GB
<_/\_> Powered by BeQuiet Colorline 450W ATX 1.3
Jet_Black82
Membro de Ouro
Membro de Ouro
 
Mensagens: 613
Registado: Sábado Abr 24, 2004 11:33
Localização: Covilhã


Voltar para Placas Gráficas

Quem está ligado:

Utilizadores a ver este Fórum: Nenhum utilizador registado e 0 visitantes

cron