Welcome, Guest. Please login or register.

Author Topic: PC still playing Amiga catchup  (Read 225264 times)

Description:

0 Members and 15 Guests are viewing this topic.

Offline Trev

  • Hero Member
  • *****
  • Join Date: May 2003
  • Posts: 1550
  • Country: 00
    • Show all replies
Re: PC still playing Amiga catchup
« Reply #29 from previous page: June 17, 2009, 08:23:52 PM »
Quote from: amigaksi;511865
It's not done in parallel usually.


It's not? Even the Amiga did things in parallel, hence the sensitivity to actions that interfered with system timing, e.g. a CAS instruction.

Most (not all, but most) new systems sold today have at least two CPU cores, never mind the number of independent execution units on the cores themselves. Parallel execution is now the de facto standard, whether your software is aware of it or not. You can ignore parallel execution, of course, but only to the detriment of the rest of the system.
 

Offline Trev

  • Hero Member
  • *****
  • Join Date: May 2003
  • Posts: 1550
  • Country: 00
    • Show all replies
Re: PC still playing Amiga catchup
« Reply #30 on: June 17, 2009, 08:32:31 PM »
Quote from: the_leander;511764
What, you mean something like this:




This setting changes the length of the quantum assigned to tasks. By default, the applications/programs setting assigns a quantum of 2 ticks to background threads and 6 ticks to threads owned by the foreground process. The background services setting assigns a quantum of 12 ticks to all threads. You can also modify the default and boosted tick counts.

So, Windows doesn't allow you to change the scheduler, but it does allow you to change the behavior of the scheduler.

Linux allows you to change the scheduler, but the different schedulers are sometimes just variations on the same theme, i.e. variable v. fixed quantums.

Both systems implement some form of priority boosting. Windows supports accounting (scheduling metadata) through various add-ons. Linux probably does, too, but I don't know off the top of my head.
« Last Edit: June 17, 2009, 08:40:11 PM by Trev »
 

Offline Trev

  • Hero Member
  • *****
  • Join Date: May 2003
  • Posts: 1550
  • Country: 00
    • Show all replies
Re: PC still playing Amiga catchup
« Reply #31 on: June 17, 2009, 08:39:29 PM »
Quote from: amigaksi;511857
You are mixing algorithms with optimizations.  If you have the same algorithm, asm version wins over high level language version.


In what way? Performance? Maintainability? Cost?

For what target audience? Hardware designers? Compiler designers? Application programmers?
 

Offline Trev

  • Hero Member
  • *****
  • Join Date: May 2003
  • Posts: 1550
  • Country: 00
    • Show all replies
Re: PC still playing Amiga catchup
« Reply #32 on: June 17, 2009, 08:44:52 PM »
Quote from: smerf;511872
and then there were somethings that I would pick that a PC couldn't do (like running windows for a whole year without a crash).


OK, you know that was a silly comment. Of course Windows can run for a year without a "crash." You're not likely to run a video player or a game on consumer grade hardware for a year without a crash, but you're also not expecting 100% uptime under those conditions.
 

Offline Trev

  • Hero Member
  • *****
  • Join Date: May 2003
  • Posts: 1550
  • Country: 00
    • Show all replies
Re: PC still playing Amiga catchup
« Reply #33 on: June 17, 2009, 09:44:21 PM »
Quote from: Fanscale;511888
Ooh, ooh I know...
Both are works of art by two great masters.


Oh, that has so many choice follow ups. If only this weren't a family-friendly board....
 

Offline Trev

  • Hero Member
  • *****
  • Join Date: May 2003
  • Posts: 1550
  • Country: 00
    • Show all replies
Re: PC still playing Amiga catchup
« Reply #34 on: June 18, 2009, 06:09:12 AM »
Quote from: stefcep2;511927
But none let you set the priority of individual tasks.  The Windows system decides what is a "program" and what is a "background" task.  You may for example want a higher priority given to a *particular* task in the background, but not to other background tasks.  Windows won't let you do this: any task whose window you haven't made active becomes a background task, and will eventually get lower priority to any task whose window is active, or vice versa depending on if you give more cpu time to "programs" or "background" tasks.


That's not true. Windows provides fine grained control over priorities, both in APIs and user accessible GUIs (hint: Task Manager). You're also a bit confused. Priorities affect scheduling, but they don't affect quantums. All threads except those with real-time priority can be preempted by the scheduler, and starved threads will eventually have their priorities boosted to compensate for overactive higher priority threads.

You're also oversimplifying foreground v. background. I'm going to go out on a limb and guess that your experience doesn't extend much beyond single-user--i.e. a single window station--desktop systems. That's OK, though. Microsoft publishes more documentation than any other software vendor, and it's all publicly available. For free.
« Last Edit: June 18, 2009, 06:15:26 AM by Trev »
 

Offline Trev

  • Hero Member
  • *****
  • Join Date: May 2003
  • Posts: 1550
  • Country: 00
    • Show all replies
Re: PC still playing Amiga catchup
« Reply #35 on: June 18, 2009, 04:39:55 PM »
And taxes....
 

Offline Trev

  • Hero Member
  • *****
  • Join Date: May 2003
  • Posts: 1550
  • Country: 00
    • Show all replies
Re: PC still playing Amiga catchup
« Reply #36 on: June 18, 2009, 06:41:32 PM »
Quote from: amigaksi;511958
If you do an IN AL,DX and then switch contexts the stack will save (EAX,EDX) at least which are related to the IN instruction thus no parallel instruction can execute until this one finishes.  I am just speaking of context switching on the same processor.  You have to wait for IN to finish to use the joystick data or whatever other device you are doing IN from.


What's not clear to me after reading Intel's manuals is whether or not IN/INS/OUT/OUTS assert LOCK# (they don't appear to do so explicitly), or if it's the responsiblity of the system designer to manage locking in a multiprocessor environment based on the state of M/IO#. The documentation implies that IN/INS/OUT/OUTS should be atomic at the processor level, which I assume means the package itself, multiple cores inclusive. I'm obviously fuzzy on the details.

Memory mapped I/O appears to play by the same rules associated with all other memory accesses, i.e. atomicity is either implied by the instruction, explicitly requested via the LOCK prefix for compatible instructions, or managed by the programmer via higher level methods.

Anyway, if you have one task polling I/O and another task processing the data, you obviously have to coordinate between the two. On a modern system, if you haven't explicitly set the affinity of the task, you have to assume the tasks may run simultaneously on separate processors. Unnecessarily stalling one processor while it waits for another would be indicative of a bad design.
 

Offline Trev

  • Hero Member
  • *****
  • Join Date: May 2003
  • Posts: 1550
  • Country: 00
    • Show all replies
Re: PC still playing Amiga catchup
« Reply #37 on: June 18, 2009, 10:00:04 PM »
Quote from: Wayne;512133
Now shut up, plug in your Pro Joystick and play F-18 Interceptor until your fingers bleed.  I command it! :)


All my 80's era digital joysticks are broken. :-( Actually, my Nintendo and Sega gamepads all work fine. It's just the Atari-style ones that don't work. You know what I'd really like to do? Transfer my SB Live! and Voodoo 3 to a PC, install MS-DOS and Wing Commander: Prophecy, hook up my Sidewinder stick, and re-live some awesome 90's-style Glide effects. Loved the rings on the explosions. (I originally played it on two SLI'd Voodoo 2 cards. Not sure if the experience would be the same on a Voodoo 3.)

EDIT: Mini rant: Selling Origin to EA was the worst thing that could have happend to Ultima and Wing Commander. Why oh why did this sale take place? Maybe we'll see a new Wing Commander (or even an epic remake) someday. If Apple buys EA, though, who knows what will happen. Also, I liked Ultima VIII and Ultima IX and was very disappointed when Ultima X was cancelled.
« Last Edit: June 18, 2009, 10:08:15 PM by Trev »
 

Offline Trev

  • Hero Member
  • *****
  • Join Date: May 2003
  • Posts: 1550
  • Country: 00
    • Show all replies
Re: PC still playing Amiga catchup
« Reply #38 on: June 18, 2009, 10:01:05 PM »
Quote from: Fester;512143
I'm betting a bucket of broccoli that this type of comparison discussion will fever on into the next decade.


That's OK. It keeps people coming back and clicking Wayne's advertisements. But wait. Where are the advertisements? It mostly just cycled between AmigaKit and Elbox, but....
 

Offline Trev

  • Hero Member
  • *****
  • Join Date: May 2003
  • Posts: 1550
  • Country: 00
    • Show all replies
Re: PC still playing Amiga catchup
« Reply #39 on: June 18, 2009, 10:36:01 PM »
Quote from: Wayne;512157
Now all we need is for someone to get mad, call the other person a Nazi and our lives will be complete..

Wayne


The thread hasn't devolved to comparisons to Hitler yet, but it will eventually, as all threads do.
 

Offline Trev

  • Hero Member
  • *****
  • Join Date: May 2003
  • Posts: 1550
  • Country: 00
    • Show all replies
Re: PC still playing Amiga catchup
« Reply #40 on: June 18, 2009, 11:46:40 PM »
Quote from: koaftder;512174
Republicans hate poor people.


Republicans hate poor people with money. They're fine with poor people as long as they're dependent on Republican-owned corporations for survival. Poor is relative of course. The corporations pay the poor just enough to cover the costs of consumerism, and that money makes its way back into the hands of the corporation, of course. It's a wonderfully cyclical system. The way taxes are structured, though, all the money eventually ends up in the hands of the government, e.g.:

corporation -> poor $100 - poor $75 government $25
poor -> corporation $75 - corporation $56 goverment $19
corporation -> poor $56 - poor $42 government $14
and so on...

Isn't that a wonderful oversimplification?
 

Offline Trev

  • Hero Member
  • *****
  • Join Date: May 2003
  • Posts: 1550
  • Country: 00
    • Show all replies
Re: PC still playing Amiga catchup
« Reply #41 on: June 19, 2009, 04:48:13 AM »
Quote from: amigaksi;512200
Actually, I would favor not even fixing hardware bugs in future upgrades to hardware-- so it remains consistent.  In fact, many people use the hardware bugs as features in their applications and expect them.  I know in Atari GTIA chip has a color clock delay in one of the graphics modes which people use to produce interlaced modes with double resolution.


Today, they're called exploits, and both hardware and software vendors are under extreme pressure from trillion dollar industries to close them as quickly as possible.
 

Offline Trev

  • Hero Member
  • *****
  • Join Date: May 2003
  • Posts: 1550
  • Country: 00
    • Show all replies
Re: PC still playing Amiga catchup
« Reply #42 on: June 19, 2009, 04:54:05 AM »
Quote from: amigaksi;512205
Xchg does a LOCK even if you don't specify one.  IN/OUT also can be delayed by device w/wait states so it's not that they have some fixed time of execution that you can multitask on for a fixed amount of time.  Plus, they use the bus-- address/data lines to do the IN/OUT.

Lots of instructions have implied locks, but I was talking about port-based I/O specifically. Latency aside, I'm curious about the implications to multiprocessor systems. In a NUMA system, if remote nodes are not prevented from executing while another node is busy, you could run two I/O-related threads out of phase, preventing stalls and linearly scaling the performance of the system, i.e. it would be perfectly parallel--in so far as the system allowed. You'd still have to deal with latency, but only per-processor. While one processor is waiting on the next I/O, the other processor is processing the previous I/O. I need to look at the AMD manuals.
« Last Edit: June 19, 2009, 05:00:32 AM by Trev »
 

Offline Trev

  • Hero Member
  • *****
  • Join Date: May 2003
  • Posts: 1550
  • Country: 00
    • Show all replies
Re: PC still playing Amiga catchup
« Reply #43 on: June 19, 2009, 10:21:56 PM »
Quote from: amigaksi;512347
Well go look at the manuals because I don't think you can parallel process two I/O instructions.
Implicit locks are only on XCHG as far as documentation on Pentium that I have.


Sorry, I started speaking in general terms, i.e. lock as opposed to LOCK#.

So, I looked at the manuals, and in a multiprocessor system, two processors can run I/O in parrellel, e.g. execute IN simultaneously. Whether or not they can access the same port simultaneously is up to the target device and whatever is doing bus arbitration.
 

Offline Trev

  • Hero Member
  • *****
  • Join Date: May 2003
  • Posts: 1550
  • Country: 00
    • Show all replies
Re: PC still playing Amiga catchup
« Reply #44 on: June 19, 2009, 11:38:27 PM »
Quote from: smerf;512384
... that is why the place where I work has an IT department staffed with about 200 personnel, they are either fixing computers or re-installing windows on them.


I'm one of those IT department staffers and have been for about 15 years. Not in your company, most likley, but nonetheless, it's what I do. We spend the majority of our time dealing with application issues. Hardware and operating system issues are few and far between.


Quote
My one last thought, would you board an aircraft if you knew that windows was running all the digital instrumentation on it?, or would you drive a auto if you knew windows was running your auto computer?


Absolutely not. Windows wasn't designed for critical aircraft and auto systems. It's OK if Windows is running my stereo, though. EDIT: I wouldn't want Amiga OS flying the plane either. What was your point?

Quote
Now my A4000 which gets turned on for use at least twice a week hasn't crashed since 1993 and still has my data on it since then, and I must admit my 2 gig hard drive is getting quite full, I still have about 1.2 gig free for use, might be another 10 years and I will have to think about installing a larger hard drive.


At the moment, my towered A1200 mysteriously resets every time I attempt to use a Voodoo.card video mode. !@#% I would reinstall and get everything to a known good state, but something's wrong with Paula or one of the CIAs. Every drive I try seeks/clicks three times and then fails to read the disk.

Quote
PC users can you claim this?


I'd been running my last Windows XP-based system using the same base install for about three years when one of my hard disks failed. (Before anyone says anything re: my previous post, yes, I'd been ignoring the warning signs.) It was a stripe sans parity, so I lost everything. C'est la vie. There's nothing I hate worse than dealing with backups, so of course, I don't run them at home.
« Last Edit: June 20, 2009, 12:07:11 AM by Trev »