FORUMS
Remove All Ads from XDA

[Kernel] [EAS] Nebula: Energy Aware Scheduling: V10.1.0.O [09/20/2017]

3,946 posts
Thanks Meter: 16,852
 
Thread Closed Email Thread
Announcement from Eliminater74: A SEPARATE THREAD FOR EAS KERNEL.
Nebula
EAS

Nebula Strikes Again

EAS
What is EAS?
Energy Aware Scheduling (EAS) is an enhancement to Linux power management, unifying CPU power control under the Linux kernel. EAS extends the Linux kernel scheduler to make it fully aware of the power/performance capabilities of the CPUs in the system, to optimize energy consumption for advanced multi-core SoCs including big.LITTLE. With EAS, the Linux kernel will use the task load and a CPU ‘Energy Model’ to control task placement to select the optimal CPU to run on.


[ Features And Additions ]

  • CPU governors: SCHED, SCHEDUTIL *NEW*
  • Extra I/O schedulers: BFQ, FIOPS, SIO, FIFO, SIOPLUS, TRIPNDROID, VR, ZEN, MAPLE
  • Overclock up to 2265MHz big cluster and 1728MHz little cluster
  • GPU Overclock 133Mhz up to 652Mhz
  • Sound Control mod that allows users to adjust digital audio gains
  • Backlight Dimmer
  • Button Light Notification
  • KCAL Color Control
  • Double Tap Fingerprint To Sleep and Sweep To Sleep
  • Fading/Pulsating Notification LED
  • Sweep2Sleep
  • Optional Disable FSYNC
  • Optional Disable magnetic cover
  • Home button Mapper
  • USB FastCharge
  • Various patches and fixes
  • Updated with the latest from CAF branch LA.UM.5.5.r1-xxxxx-8x96.0 and EAS from Google's experimental branch.
  • And Various Other Features...

Known Bugs: (Work Arounds)
  • Sound Mod: While playing Music, Switch off/on BoomSound
  • SD Card corruption:
    • [Untested Fix]
    1. Reboot back to recovery
    2. Mount USB storage
    3. Unmout it
    4. Reboot
    • [Tested Fix]
    1. Flash the last kernel that worked
    2. Reboot
    3. Flash the latest again
    4. Reboot


XDA:DevDB Information
Nebula: Energy Aware Scheduling, Kernel for the HTC 10

Contributors
Eliminater74, thewalkingdude, INDIAN-MAfIA, prstorero
Source Code: https://github.com/DevHTC10/htc10.pme.msm8996.kernel

Kernel Special Features: Energy Aware Scheduling [EAS]

Version Information
Status: Beta

Created 2017-02-06
Last Updated 2017-09-20
The Following 33 Users Say Thank You to Eliminater74 For This Useful Post: [ View ]
6th February 2017, 03:36 AM |#2  
Eliminater74's Avatar
OP Recognized Developer
Flag Clearwater
Thanks Meter: 16,852
 
Donate to Me
More
Downloads:

Extra's:


NOTE: @Freak07 Was kind enough to tweak out the init.nebula.rc scripts..
The Following 16 Users Say Thank You to Eliminater74 For This Useful Post: [ View ]
6th February 2017, 03:36 AM |#4  
Eliminater74's Avatar
OP Recognized Developer
Flag Clearwater
Thanks Meter: 16,852
 
Donate to Me
More
reserved 11
The Following 6 Users Say Thank You to Eliminater74 For This Useful Post: [ View ]
6th February 2017, 03:36 AM |#6  
Eliminater74's Avatar
OP Recognized Developer
Flag Clearwater
Thanks Meter: 16,852
 
Donate to Me
More


Thank You To The Following:
@INDIAN-MAfIA <--- Helped so much with this project
@flar2
@buckmarble
@tbalden
@franciscofranco
@Sultanxda
@squid2 (sultanqasim)
@shminer
@osm0sis
@neobuddy89
@Alucard24
@Myself5
@andip71
@RenderBroken
@myfluxi
@dorimanx
@frap129
@Cl3Kener
@nvertigo (First person to teach me to Build roms)
@Chainfire
@Tasssadar
@nkk71
@Captain_Throwback
@ZeroInfinity (Even know we had out Differences)
@Mostafa Wael (same as above)
The Following 9 Users Say Thank You to Eliminater74 For This Useful Post: [ View ]
6th February 2017, 03:37 AM |#7  
Eliminater74's Avatar
OP Recognized Developer
Flag Clearwater
Thanks Meter: 16,852
 
Donate to Me
More
Proper Way To Report a Bug: [/CENTER]

There are several apps that can do this process for you, Here is one: PlayStore: SysLog
And here is another: PlayStore: Andy Log (ROOT)
  • ramopps: is an oops/panic logger that writes its logs to RAM before the system
    crashes. It works by logging oopses and panics in a circular buffer. Ramoops
    needs a system with persistent RAM so that the content of that area can
    survive after a restart.
  • logcat: the logoutput of the Android system
  • kernel log: (kmsg / dmesg): the kernel messages
    Additionally there's the last_kmsg which is a dump of the kernel log until the last shutdown.
  • radio log: the log outpur ot your System / BB / RIL communication
  • 4

ramopps: Some Documentation on Ramopps

Normal Logcat:
Code:
adb logcat -v time -d > logcat.log
Radio Logcat:
Code:
adb logcat -b radio -v time -d > logcat_radio.log
Ramoops:
Code:
adb shell su -c cat /sys/fs/pstore/console-ramoops > kmsg.txt
Kernel Log:
Code:
adb shell su -c dmesg > dmesg.log
Last_Kmsg: NOTE:
New location of last_kmsg on Android 6.0 and above: /sys/fs/pstore/console-ramoops

Code:
adb shell su -c "cat /proc/last_kmsg" > last_kmsg.log
NOTES:
  • -v time will include timestamps in the logcats
  • -d will export the complete log.
    If you want to save a continuous log you can remove the -d parameter - then you need to cancel the logging process via CTRL+C.
    To export a continuous kernel log use adb shell su -c "cat /proc/kmsg" > dmesg.log (and cancel it via CTRL+C again).

PS: This Document was taked from another XDA Thread Called: [Reference] How to get useful logs
URL: http://forum.xda-developers.com/show....php?t=2185929
Also check this one out: [Tutorial] How To Logcat

I only Revived it a bit for ramopps.
I will update this more at a later time..

[DMESG Help Commands]
Code:
Usage:
 dmesg [options]

Display or control the kernel ring buffer.

Options:
 -C, --clear                 clear the kernel ring buffer
 -c, --read-clear            read and clear all messages
 -D, --console-off           disable printing messages to console
 -E, --console-on            enable printing messages to console
 -F, --file <file>           use the file instead of the kernel log buffer
 -f, --facility <list>       restrict output to defined facilities
 -H, --human                 human readable output
 -k, --kernel                display kernel messages
 -L, --color[=<when>]        colorize messages (auto, always or never)
                               colors are enabled by default
 -l, --level <list>          restrict output to defined levels
 -n, --console-level <level> set level of messages printed to console
 -P, --nopager               do not pipe output into a pager
 -r, --raw                   print the raw message buffer
 -S, --syslog                force to use syslog(2) rather than /dev/kmsg
 -s, --buffer-size <size>    buffer size to query the kernel ring buffer
 -u, --userspace             display userspace messages
 -w, --follow                wait for new messages
 -x, --decode                decode facility and level to readable string
 -d, --show-delta            show time delta between printed messages
 -e, --reltime               show local time and time delta in readable format
 -T, --ctime                 show human readable timestamp (may be inaccurate!)
 -t, --notime                don't print messages timestamp
     --time-format <format>  show time stamp using format:
                               [delta|reltime|ctime|notime|iso]
Suspending/resume will make ctime and iso timestamps inaccurate.

 -h, --help     display this help and exit
 -V, --version  output version information and exit

Supported log facilities:
    kern - kernel messages
    user - random user-level messages
    mail - mail system
  daemon - system daemons
    auth - security/authorization messages
  syslog - messages generated internally by syslogd
     lpr - line printer subsystem
    news - network news subsystem

Supported log levels (priorities):
   emerg - system is unusable
   alert - action must be taken immediately
    crit - critical conditions
     err - error conditions
    warn - warning conditions
  notice - normal but significant condition
    info - informational
   debug - debug-level messages
[LOGCAT Help Commands]
Code:
Usage: logcat [options] [filterspecs]
options include:
  -s              Set default filter to silent.
                  Like specifying filterspec '*:S'
  -f <filename>   Log to file. Default is stdout
  -r <kbytes>     Rotate log every kbytes. Requires -f
  -n <count>      Sets max number of rotated logs to <count>, default 4
  -v <format>     Sets the log print format, where <format> is:

                      brief color long printable process raw tag thread
                      threadtime time usec

  -D              print dividers between each log buffer
  -c              clear (flush) the entire log and exit
  -d              dump the log and then exit (don't block)
  -t <count>      print only the most recent <count> lines (implies -d)
  -t '<time>'     print most recent lines since specified time (implies -d)
  -T <count>      print only the most recent <count> lines (does not imply -d)
  -T '<time>'     print most recent lines since specified time (not imply -d)
                  count is pure numerical, time is 'MM-DD hh:mm:ss.mmm'
  -g              get the size of the log's ring buffer and exit
  -L              dump logs from prior to last reboot
  -b <buffer>     Request alternate ring buffer, 'main', 'system', 'radio',
                  'events', 'crash' or 'all'. Multiple -b parameters are
                  allowed and results are interleaved. The default is
                  -b main -b system -b crash.
  -B              output the log in binary.
  -S              output statistics.
  -G <size>       set size of log ring buffer, may suffix with K or M.
  -p              print prune white and ~black list. Service is specified as
                  UID, UID/PID or /PID. Weighed for quicker pruning if prefix
                  with ~, otherwise weighed for longevity if unadorned. All
                  other pruning activity is oldest first. Special case ~!
                  represents an automatic quicker pruning for the noisiest
                  UID as determined by the current statistics.
  -P '<list> ...' set prune white and ~black list, using same format as
                  printed above. Must be quoted.

filterspecs are a series of
  <tag>[:priority]

where <tag> is a log component tag (or * for all) and priority is:
  V    Verbose (default for <tag>)
  D    Debug (default for '*')
  I    Info
  W    Warn
  E    Error
  F    Fatal
  S    Silent (suppress all output)

'*' by itself means '*:D' and <tag> by itself means <tag>:V.
If no '*' filterspec or -s on command line, all filter defaults to '*:V'.
eg: '*:S <tag>' prints only <tag>, '<tag>:S' suppresses all <tag> log messages.

If not specified on the command line, filterspec is set from ANDROID_LOG_TAGS.

If not specified with -v on command line, format is set from ANDROID_PRINTF_LOG
or defaults to "threadtime"
The Following 4 Users Say Thank You to Eliminater74 For This Useful Post: [ View ]
6th February 2017, 03:44 AM |#10  
Eliminater74's Avatar
OP Recognized Developer
Flag Clearwater
Thanks Meter: 16,852
 
Donate to Me
More
NFO NEWS: V7.2.2 is accessible from here as well as the others.
I will clean it up as I can.. I am doing 50 things at once here.. and this part is the most pain in the butt of it all...........

V7.3.0 Is in the works............................................. ....... Its finished for the most part.. but doing some testing to make sure its stable before I push it up............

Please bare with me on this thread................

Thank you all..
The Following 15 Users Say Thank You to Eliminater74 For This Useful Post: [ View ]
Thread Closed Subscribe to Thread
Previous Thread Next Thread
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes