mirror of https://github.com/m-labs/artiq.git
runtime: don't print debug messages to the UART.
It takes ~4ms to print an empty log line because of how slow the UART is. This makes the log timestamps useless for debugging performance problems. After this commit, it takes ~75us to print an empty log line instead, which pessimizes test_rpc_timing by less than 2ms with tracing enabled.
This commit is contained in:
parent
acc5e53b32
commit
3ce1826891
|
@ -97,7 +97,7 @@ pub extern "C" fn _Unwind_Resume() -> ! {
|
||||||
|
|
||||||
#[no_mangle]
|
#[no_mangle]
|
||||||
pub unsafe extern fn rust_main() {
|
pub unsafe extern fn rust_main() {
|
||||||
static mut LOG_BUFFER: [u8; 4096] = [0; 4096];
|
static mut LOG_BUFFER: [u8; 65536] = [0; 65536];
|
||||||
BufferLogger::new(&mut LOG_BUFFER[..])
|
BufferLogger::new(&mut LOG_BUFFER[..])
|
||||||
.register(move || {
|
.register(move || {
|
||||||
info!("booting ARTIQ...");
|
info!("booting ARTIQ...");
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
use core::{mem, ptr};
|
use core::{mem, ptr};
|
||||||
use core::cell::RefCell;
|
use core::cell::RefCell;
|
||||||
use log::{self, Log, LogMetadata, LogRecord, LogLevelFilter};
|
use log::{self, Log, LogLevel, LogMetadata, LogRecord, LogLevelFilter};
|
||||||
use log_buffer::LogBuffer;
|
use log_buffer::LogBuffer;
|
||||||
use clock;
|
use clock;
|
||||||
|
|
||||||
|
@ -61,8 +61,10 @@ impl Log for BufferLogger {
|
||||||
writeln!(self.buffer.borrow_mut(),
|
writeln!(self.buffer.borrow_mut(),
|
||||||
"[{:12}us] {:>5}({}): {}",
|
"[{:12}us] {:>5}({}): {}",
|
||||||
clock::get_us(), record.level(), record.target(), record.args()).unwrap();
|
clock::get_us(), record.level(), record.target(), record.args()).unwrap();
|
||||||
println!("[{:12}us] {:>5}({}): {}",
|
if record.level() <= LogLevel::Info {
|
||||||
clock::get_us(), record.level(), record.target(), record.args());
|
println!("[{:12}us] {:>5}({}): {}",
|
||||||
|
clock::get_us(), record.level(), record.target(), record.args());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue