Jump to content
Melde dich an, um diesem Inhalt zu folgen  
Anthropolis

Samsung Galaxy S3 - Perseus Kernel [OC/UV]

Recommended Posts

Anthropolis

Hier geht es um den Perseus Kernel!

XDA-Thread

Ein Kernel ist für die Speicherverwaltung und Prozessverwaltung wichtig. Und stellt die Schnittstelle zum Abspielen von Multimedia und der Netzwerkkommunikation dar. Er ist ein Bestandteil im Android-Betriebssystem welcher die Grundlagen für die Hardwaresteuerung sowie die auf dem Betriebsystem aufbauenden Applikationen liefert.

Was kann dieser Kernel?

  • Bis auf 1800MHz übertaktbar (1700MHZ und mehr nur für Benchmark-Freaks)
  • Man kann die Spannung bis mindestens 600mV einstellen (nur für Auskenner)
  • Ein paar Netzwerk- und mit CRC zusammenhängende Patches

Probleme die Bekannt sind:

  • exFat bei der externen SD Karte funktioniert nicht

Anleitung zur Installation:

Zum Installieren des Kernels befolgt ihr diese Anleitung.

Downloads:

Perseus.alpha18.tar | DOWNLOAD

bearbeitet von Buddler
Perseus.alpha17

Diesen Beitrag teilen


Link zum Beitrag
Anthropolis

Changelog:


[B][U]Perseus alpha18 (11/07):[/U][/B]


    Updated Samsung source base up to update3, includes various fixes to fuelgauge battery reporting on full charge, MHL code, video media drivers, Wifi driver updates, gyroscope, MAX77686 battery charger changes, increased max display brightness, a buttload of LCD panel changes, and changes to the pixel refresh rate driver (This thing is controlled by the TwDVFSapp by the way and decreases screen power consumption at runtime).

    ro.secure=1 again now but with an insecure adbd as root included.

    LFB ramdisk.

    Compiled with Linaro 4.6.2 and some higher level optimizations.

    Keep in mind that running the new kernel on older ROMs can cause some funny behaviour, so update your ROM if so.



[B][U]Perseus alpha17 (9/07):[/U][/B]


    Rewrote flexrate request code for pegasusq: I apologize for releasing the previous version in the state that it was, shame on me.

    Now upon receiving a flexrate request and active ones, the governor delays hot-plugging sampling logic so that accelerated sampling is being taken into account and hot-plug sampling is normalized for the standard sampling rate. All sub-samples are being averaged into a normal sized sample at the end of the normalized period. This no longer interferes with the runqueue read-outs as they were being reset too fast and generally accelerated hot-plugging in a bad manner.

    Changed touchscreen flexrate requests to 12500µS sampling rates over 4 periods to synchronize with the default pegasusq sampling rate.

    I consider this chapter to be done and a success as far implementing flexrates as a viable and working alternative to touch-boost to increase responsiveness without having the bad battery-life side-effects of the touch booster.

    Performance governor is now core-aware, previously as no other hot-plugging logic was available, the governor would start with whatever number of online cores were available at that time and stay like that. This made Performance useless for it's designed purpose, that being bringing maximum performance. It now brings up all available cores online upon start and turns all additional cores back offline on governor stop. It is now by far the best and consistent governor for benchmarking.

    Removed unused cpu_freq_up, cpu_freq_down, and several other flexrate related governor parameters in Pegasusq as they were either not used, or senseless.

    Default Pegasusq parameters changed:

    - Sampling-down factor reduced to 1 from 2, this caused reduced sampling speed upon reaching maximum frequency. It now scales (possibly down) faster.

    - Frequency steps reduced from 40% to 21% of maximum frequency, this causes it to scale in 300MHz steps for the default maximum policy of 1400MHz. As we now have flexrates to scale faster I did not notice any negative effects on performance and this should help battery-wise on load-"spiky" applications, and in general.

    - Increased runqueue-length thresholds for the hot-plugging logic by a flat 75 for all conditions. In my opinion and experience they were too low and caused to keep the cores needlessly online. This now reduces for "average low" use the online-time of the third core considerably.

    - Increased the hot-plug frequency conditions for the 4th core.

    Updated the kernel from upstream to 3.0.36.

    Memcopy and string function improvements, won't bring any noticeable differences.

    Compilier optimizations (Roughly the same as Ninphetamine's) are now in. VFP uses the NEON libraries now. I couldn't measure any increase in any synthetic benchmarks with this though.



[B][U]Perseus alpha16 (3/07):[/U][/B]


    Disabled touchscreen touch booster; this previously locked the CPU frequency at 800MHz, memory interface to 400MHz and bus frequency to 200MHz at any time the finger touched the screen.

    Implemented flexrate capability into pegasusq; additionally added a frequency threshold above which flexrate requests are ignored. Currently this is set at 800MHz but is configurable in the governor tunables.

    Enabled quality of service requests in the touchscreen driver, this currently triggers a flexrate request at a sampling period of 15ms over the governor default of 50ms, and over 5 periods, giving 75ms of heightened reactivity. It also sends a direct memory access throughput quality of service request to the the linux power management quality of service interface to guarantee a 266MHz bus frequency for 142ms. Still need to check if that the last part works correctly.



[B][U]Perseus alpha14 (21/06):[/U][/B]


    Only Mali platform changes.

    Remove Samsung integrated checks on in the Pegasus platform that prevented the GPU control interfaces to work. Overclocking, undervolting, and the rest now properly work.

    Removal of the CPU frequency lock to 1200MHz if the GPU is at 440MHz, this is excessive as 3D load heavy applications usually do not tax the CPU that far, and is an unnecessary power consumption burden.

    The thermal control unit temperature throttling causes to fix the voltage to a fixed value when throttling is in place; this is useless considering frequency is not limited, making the whole thing senseless. Thus removed.


[B][U]Perseus alpha13 (20/06):[/U][/B]


    Rebased sources on a Linux branch for commit completedness. All commits reapplied and cleaned. New repo.

    CIFS included as module

    Busybox removed. This should be part of the ROM.


[B][U]Perseus alpha12 (14/06):[/U][/B]


    Added enhanced init.d support as per dk_zero-cool's implementation.

    SHA-1 improvements

    Added exception to the module loading logic for the exFat driver module thus making it work. (Credit to gokhanmoral)


[B][U]Perseus alpha11 (10/06):[/U][/B]


    ro.secure=0

    Recovery renamed as busybox in /sbin. I'll compile a proper busybox later on, or remove it alltogether when a recovery with autoinstall is released by CF or somebody else.



[B][U]Perseus alpha10 (8/06):[/U][/B]

[LIST]

[*]Overclocking up to 1800MHz. Voltages in ASV table are somewhat scaled up until 1600MHz, after that you're on your own and have to optimize yourself.

Intel claims maximum sustainable safe voltage for 32nm HKMG to be 1.4V, above that may cause electron migration to the silicon and permanently deteriorate your chip. 1700 and above only for avid overclockers and benchmark freaks. Credit to tvanhak for playing lab rat with his phone. [*]Samsung frequency limitation removed to scale above 1400MHz, full credit goes to Gokhanmoral for finding this hack in the kernel as it is in a very sneaky location.

[/LIST]


[B][U]Perseus alpha7 (5/06):[/U][/B]

[LIST]

[*]Reduced regulator voltage initialization minimum to 600mV, you can now undervolt that far. Be aware of crashes.

[*]Added SIO scheduler

[*]Some network and CRC related patches

[/LIST]


[B][U]Perseus alpha6 (4/06):[/U][/B]

[LIST]

[*]UV_mV_table support, apps like SetCPU work now.

[*]If you have a voltage set at for example 1187500µV the output will be rounded up to be displayed at 1188mV. If you set a voltage non multiple of 12.5mV then for example, 1190mV, it will round it to the nearest valid step, being 1187.5mV. UV_uV_table is there for finer grained control but no app suports that yet.

[/LIST]


[U][B]Perseus alpha3 (4/06):[/B][/U]

[LIST]

[*]Mali: disable state tracking

[*]Mali: GPU frequency, scaling and voltage control

[*]Governor pegasusq: make up_threshold_at_min_freq and freq_for_responsiveness configurable values. This is the reason the Galaxy S3 is so smooth, it has super aggressive scaling values for the governor until default 500MHz.

[*]Enabled 1500MHz per defconfig and added voltage values to ASV table for it

[*]Added UV_uV_table for voltage control on the CPU; this is not compatible for any programm which supports undervolting right now, we need UV_mV_table for that and since we have 12.5mV steps being fed to Vdd it's not compatible for now.

[*]Boot partitions are made visible.

[/LIST]


bearbeitet von Buddler

Diesen Beitrag teilen


Link zum Beitrag
Anthropolis

So Leute,

Update auf die neuste Version!

Man kann den Prozessor nun bis zu 1800MHz übertakten!! ;)

Grüße

Diesen Beitrag teilen


Link zum Beitrag
AndreiLux

Hab nie die Faszination oder den Sinn verstanden einfach ganze Einträge all über das Internet in verschiedene Forums zu posten wenn man einfach auf das Original linken kann was immer aktuell sein wird...

Naja, mir egal. Wenn jemand was braucht bitte ins XDA Thread schreiben, könnt es auch in Deutsch machen wenn es sein muss.

Diesen Beitrag teilen


Link zum Beitrag
Anthropolis

Weil wir hier den deutschen Support leisten, für alle die kein Englisch können, und auch nur gebrochenes Deutsch können. Wir erklären hier halt alles.

Grüße

Diesen Beitrag teilen


Link zum Beitrag
Buddler

Update

Perseus alpha14 (21/06):

Only Mali platform changes.

Remove Samsung integrated checks on in the Pegasus platform that prevented the GPU control interfaces to work. Overclocking, undervolting, and the rest now properly work.

Removal of the CPU frequency lock to 1200MHz if the GPU is at 440MHz, this is excessive as 3D load heavy applications usually do not tax the CPU that far, and is an unnecessary power consumption burden.

The thermal control unit temperature throttling causes to fix the voltage to a fixed value when throttling is in place; this is useless considering frequency is not limited, making the whole thing senseless. Thus removed.

  • Like 1

Diesen Beitrag teilen


Link zum Beitrag
Buddler

Update

Perseus alpha16 (3/07):

  • Disabled touchscreen touch booster; this previously locked the CPU frequency at 800MHz, memory interface to 400MHz and bus frequency to 200MHz at any time the finger touched the screen.
  • Implemented flexrate capability into pegasusq; additionally added a frequency threshold above which flexrate requests are ignored. Currently this is set at 800MHz but is configurable in the governor tunables.
  • Enabled quality of service requests in the touchscreen driver, this currently triggers a flexrate request at a sampling period of 15ms over the governor default of 50ms, and over 5 periods, giving 75ms of heightened reactivity. It also sends a direct memory access throughput quality of service request to the the linux power management quality of service interface to guarantee a 266MHz bus frequency for 142ms. Still need to check if that the last part works correctly.

Diesen Beitrag teilen


Link zum Beitrag
Buddler

Update

Perseus alpha17 (9/07):

Rewrote flexrate request code for pegasusq: I apologize for releasing the previous version in the state that it was, shame on me.

Now upon receiving a flexrate request and active ones, the governor delays hot-plugging sampling logic so that accelerated sampling is being taken into account and hot-plug sampling is normalized for the standard sampling rate. All sub-samples are being averaged into a normal sized sample at the end of the normalized period. This no longer interferes with the runqueue read-outs as they were being reset too fast and generally accelerated hot-plugging in a bad manner.

Changed touchscreen flexrate requests to 12500µS sampling rates over 4 periods to synchronize with the default pegasusq sampling rate.

I consider this chapter to be done and a success as far implementing flexrates as a viable and working alternative to touch-boost to increase responsiveness without having the bad battery-life side-effects of the touch booster.

Performance governor is now core-aware, previously as no other hot-plugging logic was available, the governor would start with whatever number of online cores were available at that time and stay like that. This made Performance useless for it's designed purpose, that being bringing maximum performance. It now brings up all available cores online upon start and turns all additional cores back offline on governor stop. It is now by far the best and consistent governor for benchmarking.

Removed unused cpu_freq_up, cpu_freq_down, and several other flexrate related governor parameters in Pegasusq as they were either not used, or senseless.

Default Pegasusq parameters changed:

- Sampling-down factor reduced to 1 from 2, this caused reduced sampling speed upon reaching maximum frequency. It now scales (possibly down) faster.

- Frequency steps reduced from 40% to 21% of maximum frequency, this causes it to scale in 300MHz steps for the default maximum policy of 1400MHz. As we now have flexrates to scale faster I did not notice any negative effects on performance and this should help battery-wise on load-"spiky" applications, and in general.

- Increased runqueue-length thresholds for the hot-plugging logic by a flat 75 for all conditions. In my opinion and experience they were too low and caused to keep the cores needlessly online. This now reduces for "average low" use the online-time of the third core considerably.

- Increased the hot-plug frequency conditions for the 4th core.

Updated the kernel from upstream to 3.0.36.

Memcopy and string function improvements, won't bring any noticeable differences.

Compilier optimizations (Roughly the same as Ninphetamine's) are now in. VFP uses the NEON libraries now. I couldn't measure any increase in any synthetic benchmarks with this though.

Diesen Beitrag teilen


Link zum Beitrag
Buddler

Update

Perseus alpha18 (11/07):

Updated Samsung source base up to update3, includes various fixes to fuelgauge battery reporting on full charge, MHL code, video media drivers, Wifi driver updates, gyroscope, MAX77686 battery charger changes, increased max display brightness, a buttload of LCD panel changes, and changes to the pixel refresh rate driver (This thing is controlled by the TwDVFSapp by the way and decreases screen power consumption at runtime).

ro.secure=1 again now but with an insecure adbd as root included.

LFB ramdisk.

Compiled with Linaro 4.6.2 and some higher level optimizations.

Keep in mind that running the new kernel on older ROMs can cause some funny behaviour, so update your ROM if so.

Diesen Beitrag teilen


Link zum Beitrag

Please sign in to comment

You will be able to leave a comment after signing in



Jetzt anmelden
Melde dich an, um diesem Inhalt zu folgen  

×
×
  • Neu erstellen...

Wichtige Information

Bitte beachten Sie folgende Informationen: Nutzungsbedingungen und Impressum & Datenschutzerklärung. Wir haben Cookies auf deinem Gerät platziert, um die Bedienung dieser Website zu verbessern. Du kannst deine Cookie-Einstellungen anpassen, andernfalls gehen wir davon aus, dass Du damit einverstanden bist.