Announcement

Collapse
No announcement yet.

What is ACPI and what does it do for me?

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • What is ACPI and what does it do for me?

    Just interested, that's all.

    What is ACPI? I understand that it's a hardware abstraction layer that allows windows 2000 more control over turning the machine on and off etc.

    What performance benefits are there, if any?

    What potential problems are there?

    Should I just install with it enabled and leave it be?

    Secondarily, what is APIC, and how does it relate to ACPI (apart from having a disturbingly similar name)?

    For the record, this is what I run (so if you're really nice you can relate it back to me! ):

    Win 2000 Pro
    Athlon XP 2000+ on an MSI 745 Ultra (SiS) with 640Mb PC2100 RAM.
    Parhelia, Audigy 1, 30Gb HDD, CD-RWer, DVD drive.
    + some USB peripherals (printer, scanner, adsl modem).

    Gnep
    DM says: Crunch with Matrox Users@ClimatePrediction.net

  • #2
    quoted from suse.de

    The management of interrupts has always been a tricky issue of PC hardware. Simply stated, interrupts are the signals that tell the processor when to interrupt a running job in order for another request to be processed by the processor. This is also linked to the power management, which determines the time span during which no request was sent to the processor. Accordingly, it can switch to various power saving modes.

    The previous power management standards were APM and PNPBIOS. The new standard is called ACPI (Advanced Configuration and Power Interface specification), and is praised as the successor of APM and PNPBIOS. Additional features of ACPI include the description of the hardware (CPU, bus, ...) as well as some additional minor jobs beyond the power management. Furthermore, the APIC (Advanced Programmable Interrupt Controller) is another technology for the interrupt management. Unfortunately, the similarity of the abbreviations is rather confusing.

    As more and more new computer systems without APM and PNPBIOS support enter the market, the operating systems too must support ACPI. As the successor of APM and PNPBIOS, ACPI was supposed to eliminate the problems that were frequently encountered due to incorrect APM implementations of the BIOS manufacturers. However, due to its much larger complexity, ACPI too has led to many defective implementations. Especially computers that support both ACPI as well as the old APM/PNPBIOS are affected by these symptoms. Using so-called "blacklists", the operating system determines whether APM/PNPBIOS or ACPI is more suitable for a specific computer model, in case the BIOS indicates that both are supported.
    Rakido
    "Women don't want to hear a man's opinion, they just want to hear their opinion in a deeper voice."

    Comment


    • #3
      Thanks Rakido... I googled it but didn't come up with anything so useful.

      So basically, it is best to enable both with my hardware and win2k?
      DM says: Crunch with Matrox Users@ClimatePrediction.net

      Comment


      • #4
        Yep - ACPI rocks. Get everything on IRQ 11 and no more IRQ worries

        Round here it's normally known as <B><I>Free Beer on IRQ11!!</I></B>

        Comment


        • #5
          What's that? Drinks on Steve?
          The Welsh support two teams when it comes to rugby. Wales of course, and anyone else playing England

          Comment


          • #6
            Coolio. So next time I get around to reinstalling win2k, I want:

            ACPI - enabled
            APIC - disabled (?)
            PnP OS - Yes

            (If I remember right these options are in the MSI 745 1.6 BIOS...

            Then I get free beer yeah?
            DM says: Crunch with Matrox Users@ClimatePrediction.net

            Comment


            • #7
              GNEP,

              Since that explanation was essentially useless...

              ACPI is both a power management / system management system, AND a new way to deal with hardware. Whether the new way to deal with hardware is essentially a creation of Microsoft's and NOT an essential part of the ACPI system is up for argument. HOWEVER, the practical upshot is:

              - IRQ's are no longer used. Instead, hardware polling is used. Virtual IRQ's are still assigned to legacy devices such as serial ports and the system clock, but suffice it to say that they're all fake.

              - All PCI devices will share a lone IRQ. This is normal and fine.

              - There is a perhaps 1%-2% overhead associated with this. But the added stability (no longer can a device signal an interrupt and never let go) is well worth it.

              So yes, you should run in ACPI mode. There was a lot of speculation a year or two back about whether it was good or bad, and some people (the "win98 rulez" kiddiez) claimed that if you disabled it and went to great pains to excise it from your system (not really possible) and make sure that WinXP/Win2k ran the non-acpi HAL that your machine would run "way faster, doodz".

              Untrue. Leave it on, be happy.

              - Gurm
              The Internet - where men are men, women are men, and teenage girls are FBI agents!

              I'm the least you could do
              If only life were as easy as you
              I'm the least you could do, oh yeah
              If only life were as easy as you
              I would still get screwed

              Comment


              • #8
                Thanks Gurm. Much clearer

                And APIC? Or am I just being confused by the similarity here?

                (Sidenote: this all comes about because I wasn't around PCs for about 4 years, whilst all this was being introduced... somehow networks of Sun Sparcstations and SGI Indystations seemed much more interesting whilst doing my degree... anyway hence there is a "hole" in my tech-history knowledge.)
                DM says: Crunch with Matrox Users@ClimatePrediction.net

                Comment


                • #9
                  APIC and ACPI are related but different.

                  ACPI is as discribed as above.

                  APIC is the Advanced Programmable Interrupt Controller chip, which is an advance over the old PIC (Programmable Interrupt Controller).

                  APIC requires ACPI to work.

                  APIC's advantage over PIC is that it can handle more of those IRQ's Gurm was talking about.

                  At first APIC's were only found on dualie systems, but more and more you're seeing them on single CPU systems.

                  A system using PIC is maxed out at 16 IRQ's (0-15) while an APIC system can have many more. On my MSI 745 Ultra with APIC enabled and most slots full there are 23 IRQ's.

                  The rub: you have to first enable APIC in the system BIOS then install the OS. APIC uses a different HAL driver (hardware abstraction layer) than PIC does.

                  The effective difference with NT/2K/XP is that instead of having most of the cards on a single virtual IRQ (most times 9) APIC will create more IRQ's.

                  In my experience many video editing system using Win2K/XP and ACPI/PIC have hardware contentions when things like RAID cards, capture cards and audio cards share that single virtual IRQ.

                  Previously the best (and only) way around this problem was running in "Standard PC" mode; which means ACPI disbled in the BIOS and the OS installed using the Standard PC option (press F5 at the first blue screen & select it from the menu).

                  Dispite Gurms disparaging remark about using Standard PC the fact is that many video editing systems that are a mess with ACPI turned on work very nicely with it off and the OS installed as Standard PC.

                  When its available in the systems BIOS and APIC is used those problems resolve themselves without going the StandardPC route.

                  Dr. Mordrid
                  Last edited by Dr Mordrid; 18 February 2003, 11:03.
                  Dr. Mordrid
                  ----------------------------
                  An elephant is a mouse built to government specifications.

                  I carry a gun because I can't throw a rock 1,250 fps

                  Comment


                  • #10
                    PnP OS - Yes

                    The official MS stance on this is that PnP OS should be set to No
                    It cost one penny to cross, or one hundred gold pieces if you had a billygoat.
                    Trolls might not be quick thinkers but they don't forget in a hurry, either

                    Comment


                    • #11
                      I leave it on No also, and have less trouble with Win98 getting confused about IRQ's on my system.

                      Here's two lists showing the difference in IRQ routing between Win98 and WinXP on the same system with APIC on:

                      0 System timer
                      1 Standard 101/102-Key or Microsoft Natural Keyboard
                      2 Programmable interrupt controller
                      3 Intel(R) 82801BA/BAM USB Universal Host Controller - 2442
                      3 ACPI IRQ Holder for PCI IRQ Steering
                      4 Communications Port (COM1)
                      5 3Com EtherLink 10/100 PCI TX NIC (3C905B-TX)
                      5 ACPI IRQ Holder for PCI IRQ Steering
                      6 Standard Floppy Disk Controller
                      7 ECP Printer Port (LPT1)
                      8 System CMOS/real time clock
                      9 Intel(R) 82801BA/BAM USB Universal Host Controller - 2444
                      9 ACPI IRQ Holder for PCI IRQ Steering
                      9 SCI IRQ used by ACPI bus
                      10 Intel(R) 82801BA/BAM SMBus Controller - 2443
                      10 ACPI IRQ Holder for PCI IRQ Steering
                      11 RADEON 9100 SERIES
                      11 ACPI IRQ Holder for PCI IRQ Steering
                      12 Creative SB Live!
                      12 ACPI IRQ Holder for PCI IRQ Steering
                      13 Numeric data processor
                      14 Primary Ultra ATA Controller
                      14 Intel(R) 82801BA Ultra ATA Storage Controller - 244B
                      15 Secondary Ultra ATA Controller
                      15 Intel(R) 82801BA Ultra ATA Storage Controller - 244B

                      IRQ 0 System timer OK
                      IRQ 1 Standard 101/102-Key or Microsoft Natural PS/2 Keyboard OK
                      IRQ 4 Communications Port (COM1) OK
                      IRQ 6 Standard floppy disk controller OK
                      IRQ 8 System CMOS/real time clock OK
                      IRQ 10 Intel(R) 82801BA/BAM SMBus Controller - 2443 OK
                      IRQ 13 Numeric data processor OK
                      IRQ 14 Primary IDE Channel OK
                      IRQ 15 Secondary IDE Channel OK
                      IRQ 16 RADEON 9100 SERIES OK
                      IRQ 18 Creative SB Live! Value OK
                      IRQ 19 Intel(r) 82801BA/BAM USB Universal Host Controller - 2442 OK
                      IRQ 20 Microsoft ACPI-Compliant System OK
                      IRQ 22 3Com EtherLink 10/100 PCI TX NIC (3C905B-TX) OK
                      IRQ 23 Intel(r) 82801BA/BAM USB Universal Host Controller - 2444 OK

                      Comment


                      • #12
                        Thanks people!

                        So what difference does PnP OS make then under Win2k?
                        DM says: Crunch with Matrox Users@ClimatePrediction.net

                        Comment


                        • #13
                          My understanding is that this tells the BIOS how much PnP setup it should be doing. With PnP OS set to Yes, the BIOS will do the minimum PnP configuration necessary to boot the OS, and leave the rest of the PnP configuration to the OS. If it's set to No, the BIOS will set up as much as it can, on the assumption that the OS doesn't know how to do that for itself.

                          Of course, in this ISA-less age, it really doesn't make any difference.
                          Blah blah blah nick blah blah confusion, blah blah blah blah frog.

                          Comment


                          • #14
                            ACPI + APIC is great
                            If there's artificial intelligence, there's bound to be some artificial stupidity.

                            Jeremy Clarkson "806 brake horsepower..and that on that limp wrist faerie liquid the Americans call petrol, if you run it on the more explosive jungle juice we have in Europe you'd be getting 850 brake horsepower..."

                            Comment


                            • #15
                              Just to add a bit of mis-information (hope the term is correct): PIC was capable to address up to 256 IRQs.
                              APIC a lot more, I don't remember how much exactly.

                              (Wombat, you are the tecnician and I'm too old to remember the answer: why the hell with 256 IRQs available, old DOS gave us only 16? Are the other secretly used by the motherboard, or is still because no one will never need more than 640kbyte? )
                              Sat on a pile of deads, I enjoy my oysters.

                              Comment

                              Working...
                              X