{'fraction_non_alphanumeric': 0.02981366459627329, 'fraction_numerical': 0.0018633540372670807, 'mean_word_length': 4.988847583643123, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Improving the program performance through prioritized disk operation

Computers are indispensable to modern human society. Often computers host multiple programs running simultaneously. However, among those programs, some maybe more time-critical than others to users. Consequently, users would hope those time-critical programs to finish their execution as soon as possible. Generally speaking, the course of program execution includes CPU operation and hard disk operation (disk I/O). For the CPU operation, modern computer systems have the ability to adjust the CPU scheduling sequence according to program priority. Nevertheless, for the disk I/O, it is not quite the same. Most computer systems do not have effective ways to conduct disk I/O based on program priority. Compared with CPU, disk I/O speed is still about six orders of magnitude behind, making time-critical and high-priority programs involving disk I/O hard to achieve high performance as users would expect. Currently, Complete Fair Queuing (CFQ) is the default disk scheduler in the Linux operating system. Unfortunately, it only offers prioritized disk I/O to some extent. We propose and implement a new disk scheduler, namely Prioritized Complete Fair Queuing (PCFQ), by adding schemes of supporting truly prioritized disk I/O into CFQ in the Linux kernel. We compare the performance between PCFQ and CFQ under different situations. Our experimental results demonstrate that, for programs with high priority, PCFQ outperforms CFQ in all cases by reducing up to extra 59.7% of the program execution time on top of what CFQ can accomplish.