A Computer hardware and components forum. ComputerBanter.com

If this is your first visit, be sure to check out the FAQ by clicking the link above. You may have to register before you can post: click the register link above to proceed. To start viewing messages, select the forum that you want to visit from the selection below.

Go Back   Home » ComputerBanter.com forum » Video Cards » Nvidia Videocards
Site Map Home Authors List Search Today's Posts Mark Forums Read Web Partners

An idea how to speed up computer programs and avoid waiting. ("event driven memory system")



 
 
Thread Tools Display Modes
  #1  
Old July 22nd 11, 02:48 PM posted to alt.comp.lang.borland-delphi,alt.comp.periphs.videocards.nvidia,alt.lang.asm,comp.arch,rec.games.corewar
Skybuck Flying[_7_]
external usenet poster
 
Posts: 463
Default An idea how to speed up computer programs and avoid waiting. ("event driven memory system")

Here is an idea:

1. The computer program issue's load and store requests to the memory
system.

Instead of only specifieing the memory address, the computer program would
also specifiy the instruction pointer.

2. The memory system fetches the memory located at the memory address and
returns it but it also returns the instruction pointer.

3. Because the instruction pointer is returned, this allows the computer
program to go back to the instruction that was "stalled" or "skipped".

4. This would allow the computer program to issue memory requests, but not
have to wait for them. The computer program would jump back to the
instruction location once it's memory
has been retrieved. This would allow the computer program to simply move
on/go on with executing other instructions and potentially retrieving other
memory locations.

For example:

Load
Load
Load
Load
Load
Load

^ All these instructions specify an memory address, but also specify the
instruction pointer to main memory, and also specify a register where to
load the memory into.

The question is now:

What to do with other instruction which depend on the registers to be "live"
/ "filled" with data.

Well perhaps these instructions could all check a "flag" inside the
register.

If the register is "live" the instructions get executed. If the register is
"dead" (/"stalled") the instruction is skipped.

This would allow a programmer to program a lot of semi-parallel code which
gets or gets not executed depending on if the memory came in...

The program would then simply jump back at appriorate times... when the
memory comes in... like an interrupt handler or like an exception handler.

So this is probably a totally new instruction flow idea.

Finally if the memory loading takes so long that the program cannot do
anything anymore then the programmer could issue a wait:

Like so:

wait

The processor would then either wait for all loads to complete or some other
interrupts to occur.

So another way to describe this system would be a really short abstract way:

"An event driven memory system".

Bye,
Skybuck.

  #2  
Old July 22nd 11, 04:06 PM posted to alt.comp.lang.borland-delphi,alt.comp.periphs.videocards.nvidia,alt.lang.asm,comp.arch,rec.games.corewar
Wolfgang Kern
external usenet poster
 
Posts: 10
Default An idea how to speed up computer programs and avoid waiting. ("event driven memory system")


"Flying Bucket" posted one more _new_ idea

Here is an idea:

1. The computer program issue's load and store requests to the memory
system.

Instead of only specifieing the memory address, the computer program would
also specifiy the instruction pointer.

2. The memory system fetches the memory located at the memory address and
returns it but it also returns the instruction pointer.

3. Because the instruction pointer is returned, this allows the computer
program to go back to the instruction that was "stalled" or "skipped".

4. This would allow the computer program to issue memory requests, but not
have to wait for them. The computer program would jump back to the
instruction location once it's memory
has been retrieved. This would allow the computer program to simply move
on/go on with executing other instructions and potentially retrieving
other memory locations.


All this issues are already covered/implemented in x86 architectures,
OoO features exist there since a while (10 years).
__
wolfgang


  #3  
Old July 23rd 11, 02:52 PM posted to alt.comp.lang.borland-delphi,alt.comp.periphs.videocards.nvidia,alt.lang.asm,comp.arch,rec.games.corewar
Quadibloc
external usenet poster
 
Posts: 47
Default An idea how to speed up computer programs and avoid waiting.("event driven memory system")

On Jul 22, 9:06*am, "wolfgang kern" wrote:

All this issues are already covered/implemented in x86 architectures,
OoO features exist there since a while (10 years).


Indeed. If one is going to add something to the machine language,
generally speaking it would be something that allows instructions to
execute fully in sequence without delays. So instead of going back to
an instruction that requested data from memory, there would be
instructions that made a request, and later instructions that used the
data.

John Savard
  #4  
Old July 23rd 11, 03:59 PM posted to alt.comp.lang.borland-delphi,alt.comp.periphs.videocards.nvidia,alt.lang.asm,comp.arch,rec.games.corewar
Jamie
external usenet poster
 
Posts: 73
Default An idea how to speed up computer programs and avoid waiting.("event driven memory system")

Quadibloc wrote:
On Jul 22, 9:06 am, "wolfgang kern" wrote:


All this issues are already covered/implemented in x86 architectures,
OoO features exist there since a while (10 years).



Indeed. If one is going to add something to the machine language,
generally speaking it would be something that allows instructions to
execute fully in sequence without delays. So instead of going back to
an instruction that requested data from memory, there would be
instructions that made a request, and later instructions that used the
data.

John Savard

Guess that is why they have cache !


Jamie


  #5  
Old July 23rd 11, 05:19 PM posted to alt.comp.lang.borland-delphi,alt.comp.periphs.videocards.nvidia,alt.lang.asm,comp.arch,rec.games.corewar
Skybuck Flying[_7_]
external usenet poster
 
Posts: 463
Default An idea how to speed up computer programs and avoid waiting. ("event driven memory system")



"wolfgang kern" wrote in message ...


"Flying Bucket" posted one more _new_ idea

Here is an idea:

1. The computer program issue's load and store requests to the memory
system.

Instead of only specifieing the memory address, the computer program would
also specifiy the instruction pointer.

2. The memory system fetches the memory located at the memory address and
returns it but it also returns the instruction pointer.

3. Because the instruction pointer is returned, this allows the computer
program to go back to the instruction that was "stalled" or "skipped".

4. This would allow the computer program to issue memory requests, but not
have to wait for them. The computer program would jump back to the
instruction location once it's memory
has been retrieved. This would allow the computer program to simply move
on/go on with executing other instructions and potentially retrieving
other memory locations.


"
All this issues are already covered/implemented in x86 architectures,
OoO features exist there since a while (10 years).
"

I don't think so...

I have never seen x86 processors execute instructions and then later go back
to previous instructions

I might do this underneath, but I have never seen a debugger jump back =D

Bye,
Skybuck

 




Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Dimension 8400 w/intel 670 3.8gig processor "Thermal Event" Brad[_3_] Dell Computers 44 April 23rd 11 11:09 PM
Idea for Quake 3/Live: "Skill Glow" Skybuck Flying[_2_] Nvidia Videocards 1 February 22nd 09 08:34 AM
Can't "unsync" memory bus speed (A8V-E SE) Hackworth Asus Motherboards 2 September 6th 06 05:28 AM
P5WD2-E system "hang" after memory size [email protected] Asus Motherboards 12 July 8th 06 11:24 PM


All times are GMT +1. The time now is 11:16 PM.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.
Copyright 2004-2018 ComputerBanter.com.
The comments are property of their posters.