| LAST_COMPILE |
|---|
| 2024-06-20 |
Microprocessor Trend Data
Data - Log
Info
Info
- Microprocessor Trend Data html
LAST_COMPILE
variable
Code
`microprocessor-trend-data` %>%
group_by(variable) %>%
summarise(Nobs = n()) %>%
print_table_conditional()| variable | Nobs |
|---|---|
| cores | 91 |
| frequency | 102 |
| specint | 76 |
| transistors | 100 |
| watts | 102 |
Transistors
Linear
Code
plot_linear <- `microprocessor-trend-data` %>%
filter(variable == "transistors") %>%
transmute(V1 = as.numeric(V1),
V2 = V2) %>%
filter(!is.na(V1), !is.na(V2)) %>%
ggplot + geom_line(aes(x = V1, y = V2)) +
scale_y_continuous(breaks = 10^7*seq(0, 10, 1)) +
theme_minimal() +
ylab("# of transistors per microprocessor") + xlab("")
plot_linear
Log
Code
plot_log <- plot_linear +
scale_y_log10(breaks = 10^(seq(1, 10, 1)))
plot_log
Both
Code
ggarrange(plot_linear + ggtitle("Moore's Law\nLinear Scale"),
plot_log + ggtitle("\nLog Scale") + ylab(""))
Watts
Both
Code
plot1 <- `microprocessor-trend-data` %>%
filter(variable == "watts") %>%
transmute(V1 = as.numeric(V1),
V2 = V2) %>%
filter(!is.na(V1), !is.na(V2)) %>%
ggplot + geom_line(aes(x = V1, y = V2)) +
scale_y_continuous(breaks = seq(0, 1000, 50)) +
theme_minimal() + ggtitle("Linear Scale") +
ylab("Watts") + xlab("")
plot2 <- plot1 +
scale_y_log10(breaks = c(1, 2, 5, 8, 10, 20, 50, 80, 100, 200, 500)) +
ggtitle("Log Scale")
ggarrange(plot1, plot2)
Linear
Code
plot1
Log
Code
plot2
Cores
Both
Code
plot1 <- `microprocessor-trend-data` %>%
filter(variable == "cores") %>%
transmute(V1 = as.numeric(V1),
V2 = V2) %>%
filter(!is.na(V1), !is.na(V2)) %>%
ggplot + geom_line(aes(x = V1, y = V2)) +
scale_y_continuous(breaks = seq(0, 1000, 50)) +
theme_minimal() + ggtitle("Linear Scale") +
ylab("Cores") + xlab("")
plot2 <- plot1 +
scale_y_log10(breaks = c(1, 2, 5, 8, 10, 20, 50, 80, 100, 200, 500)) +
ggtitle("Log Scale")
ggarrange(plot1, plot2)
Linear
Code
plot1
Log
Code
plot2