/qemu/audio/ |
H A D | mixeng.c | 449 * Sound Tools rate change effect file. 468 struct rate { struct 480 struct rate *rate = g_new0(struct rate, 1); in st_rate_start() argument 482 rate->opos = 0; in st_rate_start() 485 rate->opos_inc = ((uint64_t) inrate << 32) / outrate; in st_rate_start() 487 rate->ipos = 0; in st_rate_start() 488 rate->ilast.l = 0; in st_rate_start() 489 rate->ilast.r = 0; in st_rate_start() 490 return rate; in st_rate_start() 510 * @opaque: pointer to struct rate [all …]
|
H A D | rate_template.h | 33 struct rate *rate = opaque; in NAME() local 49 if (rate->opos_inc == (1ULL + UINT_MAX)) { in NAME() 66 ilast = rate->ilast; in NAME() 71 while (rate->ipos <= (rate->opos >> 32)) { in NAME() 73 rate->ipos++; in NAME() 89 if (rate->ipos >= 0x10001) { in NAME() 90 rate->ipos = 1; in NAME() 91 rate->opos &= 0xffffffff; in NAME() 97 t = (rate->opos & UINT_MAX) * (1.f / UINT_MAX); in NAME() 99 t = (rate->opos & UINT_MAX) / (mixeng_real) UINT_MAX; in NAME() [all …]
|
H A D | noaudio.c | 36 RateCtl rate; member 41 RateCtl rate; member 47 return audio_rate_get_bytes(&no->rate, &hw->info, len); in no_write() 56 audio_rate_start(&no->rate); in no_init_out() 70 audio_rate_start(&no->rate); in no_enable_out() 80 audio_rate_start(&no->rate); in no_init_in() 92 int64_t bytes = audio_rate_get_bytes(&no->rate, &hw->info, size); in no_read() 103 audio_rate_start(&no->rate); in no_enable_in()
|
H A D | spiceaudio.c | 47 RateCtl rate; member 57 RateCtl rate; member 130 return audio_rate_peek_bytes(&out->rate, &hw->info); in line_out_get_free() 153 audio_rate_add_bytes(&out->rate, size); in line_out_put_buffer() 177 audio_rate_start(&out->rate); in line_out_enable() 245 uint64_t to_read = audio_rate_get_bytes(&in->rate, &hw->info, len) >> 2; in line_in_read() 269 audio_rate_start(&in->rate); in line_in_enable()
|
H A D | audio_int.h | 112 void *rate; member 128 void *rate; member 261 void audio_rate_start(RateCtl *rate); 262 size_t audio_rate_peek_bytes(RateCtl *rate, struct audio_pcm_info *info); 263 void audio_rate_add_bytes(RateCtl *rate, size_t bytes_used); 264 size_t audio_rate_get_bytes(RateCtl *rate, struct audio_pcm_info *info,
|
H A D | audio.c | 448 if (sw->rate) { in audio_detach_capture() 449 st_rate_stop (sw->rate); in audio_detach_capture() 450 sw->rate = NULL; in audio_detach_capture() 486 sw->rate = st_rate_start (sw->info.freq, hw_cap->info.freq); in audio_attach_capture() 565 st_rate_flow(sw->rate, src, dst, &frames_in, &frames_out); in audio_pcm_sw_resample_in() 576 st_rate_flow(sw->rate, src, dst, &frames_in, &frames_out); in audio_pcm_sw_resample_in() 696 st_rate_flow_mix(sw->rate, src, dst, &frames_in, &frames_out); in audio_pcm_sw_resample_out() 707 st_rate_flow_mix(sw->rate, src, dst, &frames_in, &frames_out); in audio_pcm_sw_resample_out() 736 sw_max = st_rate_frames_in(sw->rate, frames_out_max); in audio_pcm_sw_write() 1030 live, st_rate_frames_out(sw->rate, live) in audio_get_avail() [all …]
|
H A D | dbusaudio.c | 61 RateCtl rate; member 74 RateCtl rate; member 91 *size = audio_rate_get_bytes(&vo->rate, &hw->info, *size); in dbus_get_buffer_out() 177 audio_rate_start(&vo->rate); in dbus_init_out() 215 audio_rate_start(&vo->rate); in dbus_enable_out() 291 audio_rate_start(&vo->rate); in dbus_init_in() 364 /* size = audio_rate_get_bytes(&vo->rate, &hw->info, size); */ in dbus_read() 399 audio_rate_start(&vo->rate); in dbus_enable_in()
|
H A D | wavaudio.c | 38 RateCtl rate; member 45 int64_t bytes = audio_rate_get_bytes(&wav->rate, &hw->info, len); in wav_write_out() 132 audio_rate_start(&wav->rate); in wav_init_out() 185 audio_rate_start(&wav->rate); in wav_enable_out()
|
/qemu/docs/devel/migration/ |
H A D | dirty-limit.rst | 4 The dirty limit, short for dirty page rate upper limit, is a new capability 36 page rate value and the corresponding upper limit of the VM: 37 The dirty page rate is calculated via the KVM dirty ring mechanism, 39 last KVM_EXIT_DIRTY_RING_FULL exception; The dirty page rate upper 47 rate progressively down to the upper limit without oscillation. To 49 subtract sleep time based on the ratio of the current dirty page rate 50 to the limit, which is used when the current dirty page rate is far 52 the current dirty page rate is close to the limit. 70 rate inside the limit. This leads to more steady reading performance during
|
/qemu/hw/audio/ |
H A D | fmopl.h | 14 uint8_t KSR; /* key scale rate :(shift down bit) */ 15 int32_t *AR; /* attack rate :&AR_TABLE[AR<<2] */ 16 int32_t *DR; /* decay rate :&DR_TALBE[DR<<2] */ 18 int32_t *RR; /* release rate :&DR_TABLE[RR<<2] */ 20 uint8_t ksr; /* key scale rate :kcode>>KSR */ 59 int rate; /* sampling rate (Hz) */ member 75 int32_t AR_TABLE[76]; /* attack rate tables */ 76 int32_t DR_TABLE[76]; /* decay rate tables */ 93 FM_OPL *OPLCreate(int clock, int rate);
|
H A D | fmopl.c | 50 /* attack/decay rate time rate */ 51 #define OPL_ARRATE 141280 /* RATE 4 = 2826.24ms @ 3.6MHz */ 52 #define OPL_DRRATE 1956000 /* RATE 4 = 39280.64ms @ 3.6MHz */ 200 /* dummy attack / decay rate ( when rate == 0 ) */ 370 /* attack , decay rate recalcration */ in CALC_FCSLOT() 408 /* set attack rate & decay rate */ 425 /* set sustain level & release rate */ 575 double rate; in init_timetables() local 577 /* make attack rate & decay rate tables */ in init_timetables() 580 rate = OPL->freqbase; /* frequency rate */ in init_timetables() [all …]
|
H A D | marvell_88w8618.c | 137 int rate; in mv88w8618_audio_clock_update() local 140 rate = 24576000 / 64; /* 24.576MHz */ in mv88w8618_audio_clock_update() 142 rate = 11289600 / 64; /* 11.2896MHz */ in mv88w8618_audio_clock_update() 144 rate /= ((s->clock_div >> 8) & 0xff) + 1; in mv88w8618_audio_clock_update() 146 wm8750_set_bclk_in(s->wm, rate); in mv88w8618_audio_clock_update()
|
/qemu/hw/misc/ |
H A D | omap_clk.c | 43 unsigned long rate; /* Current rate (if .running) */ member 44 unsigned int divisor; /* Rate relative to input (if .enabled) */ 45 unsigned int multiplier; /* Rate relative to input (if .enabled) */ 52 .rate = 12000000, 58 .rate = 32768, 346 .rate = 12000000, 354 .rate = 48000000, 362 .rate = 12000000, 371 .rate = 12000000, 379 .rate = 48000000, [all …]
|
/qemu/qapi/ |
H A D | migration.json | 30 # @dirty-pages-rate: number of pages dirtied by second by the guest 69 'normal-bytes': 'int', 'dirty-pages-rate': 'int', 90 # @cache-miss-rate: rate of cache miss (since 2.1) 92 # @encoding-rate: rate of encoded bytes (since 5.1) 100 'cache-miss': 'int', 'cache-miss-rate': 'number', 101 'encoding-rate': 'number', 'overflow': 'int' } } 113 # @busy-rate: rate of thread busy 117 # @compression-rate: rate of compressed size 122 'data': {'pages': 'int', 'busy': 'int', 'busy-rate': 'number', 123 'compressed-size': 'int', 'compression-rate': 'number' } } [all …]
|
/qemu/migration/ |
H A D | dirtyrate.c | 282 DirtyRateVcpu *rate = g_new0(DirtyRateVcpu, 1); in query_dirty_rate_info() local 283 rate->id = DirtyStat.dirty_ring.rates[i].id; in query_dirty_rate_info() 284 rate->dirty_rate = DirtyStat.dirty_ring.rates[i].dirty_rate; in query_dirty_rate_info() 285 QAPI_LIST_APPEND(tail, rate); in query_dirty_rate_info() 324 /* last calc-dirty-rate qmp use dirty ring mode */ in cleanup_dirtyrate_stat() 770 * If the dirty rate is already being measured, don't attempt to start. in qmp_calc_dirty_rate() 773 error_setg(errp, "the dirty rate is already being measured."); in qmp_calc_dirty_rate() 828 error_setg(errp, "init dirty rate calculation state failed."); in qmp_calc_dirty_rate() 839 * update dirty rate mode so that we can figure out what mode has in qmp_calc_dirty_rate() 876 monitor_printf(mon, "Dirty rate: "); in hmp_info_dirty_rate() [all …]
|
/qemu/tests/qtest/migration/ |
H A D | precopy-tests.c | 31 * Dirtylimit stop working if dirty page rate error 827 "{ 'execute': 'calc-dirty-rate'," in calc_dirty_rate() 837 "{ 'execute': 'query-dirty-rate' }"); in query_dirty_rate() 845 "'dirty-rate': %" PRIu64 " } }", in dirtylimit_set_all() 906 QDict *rate; in get_dirty_rate() local 916 rates = qdict_get_qlist(rsp_return, "vcpu-dirty-rate"); in get_dirty_rate() 922 rate = qobject_to(QDict, qlist_entry_obj(entry)); in get_dirty_rate() 923 g_assert(rate); in get_dirty_rate() 925 dirtyrate = qdict_get_try_int(rate, "dirty-rate", -1); in get_dirty_rate() 936 QDict *rate; in get_limit_rate() local [all …]
|
/qemu/include/qemu/ |
H A D | throttle.h | 57 * bkt.level and leaks at a rate of bkt.avg units per second. 61 * again. This is what makes the I/O rate bkt.avg. 63 * - The bkt.avg rate does not apply until the bucket is full, 66 * bucket in bkt.burst_level that leaks at a rate of bkt.max units 72 * rate will go down to bkt.avg. 74 * - Since the bucket always leaks at a rate of bkt.avg, this also
|
/qemu/system/ |
H A D | dirtylimit.c | 2 * Dirty page rate limit implementation code 30 * Dirtylimit stop working if dirty page rate error 36 * page rate error value percentage over 57 * Quota dirty page rate, unit is MB/s 319 * current dirty page rate may never reach the quota, we should stop in dirtylimit_set_throttle() 442 * dirty page rate limit is not allowed to set if migration 470 error_setg(errp, "can't cancel dirty page rate limit while" in qmp_cancel_vcpu_dirty_limit() 526 error_setg(errp, "can't set dirty page rate limit while" in qmp_set_vcpu_dirty_limit() 668 monitor_printf(mon, "vcpu[%"PRIi64"], limit rate %"PRIi64 " (MB/s)," in hmp_info_vcpu_dirty_limit() 669 " current rate %"PRIi64 " (MB/s)\n", in hmp_info_vcpu_dirty_limit()
|
/qemu/monitor/ |
H A D | monitor.c | 50 int64_t rate; /* Minimum time (in ns) between two events */ member 324 * QEMU_CLOCK_VIRTUAL, to support testing rate limits. 359 * applying any rate limiting if required. 369 trace_monitor_protocol_event_queue(event, qdict, evconf->rate); in monitor_qapi_event_queue_no_reenter() 373 if (!evconf->rate) { in monitor_qapi_event_queue_no_reenter() 385 * Timer is pending for (at least) evconf->rate ns after in monitor_qapi_event_queue_no_reenter() 393 * Last send was (at least) evconf->rate ns ago. in monitor_qapi_event_queue_no_reenter() 395 * monitor_qapi_event_handler() in evconf->rate ns. Any in monitor_qapi_event_queue_no_reenter() 410 timer_mod_ns(evstate->timer, now + evconf->rate); in monitor_qapi_event_queue_no_reenter() 457 * This function runs evconf->rate ns after sending a throttled [all …]
|
H A D | trace-events | 9 monitor_protocol_event_queue(uint32_t event, void *qdict, uint64_t rate) "event=%d data=%p rate=%" …
|
/qemu/docs/ |
H A D | xbzrle.txt | 19 A small cache size will result in high cache miss rate. 111 xbzrle cache miss rate: L 112 xbzrle encoding rate: M 115 xbzrle cache miss: the number of cache misses to date - high cache-miss rate
|
H A D | throttle.txt | 112 With this, the user can perform I/O on hd0.qcow2 at a rate of 2000 235 - Water leaks from the bucket at a rate of 100 IOPS. 236 - Water can be added to the bucket at a rate of 2000 IOPS. 244 full at a rate of 2000 IOPS (the burst rate). Once the bucket is full 245 we can only add as much water as it leaks, therefore the I/O rate is 255 a lower I/O rate, e.g. 1000 IOPS during 120 seconds.
|
/qemu/include/system/ |
H A D | dirtyrate.h | 2 * dirty page rate helper functions 20 DirtyRateVcpu *rates; /* array of dirty rate for each vcpu */
|
/qemu/tests/bench/ |
H A D | qht-bench.c | 91 " -u = update rate (0.0 to 100.0), 50/50 split of insertions/removals\n" 94 " -S = resize rate (0.0 to 100.0)\n" 284 printf(" update rate: %f%%\n", update_rate * 100.0); in pr_params() 291 static void do_threshold(double rate, uint64_t *threshold) in do_threshold() argument 294 * For 0 <= rate <= 1, scale to fit in a uint64_t. in do_threshold() 308 if (rate == 1.0) { in do_threshold() 311 *threshold = rate * 0x1p64; in do_threshold()
|
/qemu/tests/qemu-iotests/ |
H A D | 093 | 191 rate = params[tk] * ndrives 192 burst_rate = rate * 7 197 settings[tk] = rate 203 wait_ns = nsec_per_sec * burst_length * burst_rate // rate 206 # Test I/O at the max burst rate 211 # Now test I/O at the normal rate 212 limits[tk] = rate
|