Bắt đầu ngayBắt đầu miễn phí

Chạy song song các lệnh gọi đến chunk.apply

Hàm chunk.apply() cũng có thể tận dụng các tiến trình chạy song song để xử lý dữ liệu nhanh hơn. Khi tham số CH.PARALLEL được đặt lớn hơn một trên máy Linux và Unix (bao gồm cả Mac), nhiều tiến trình sẽ đồng thời đọc và xử lý dữ liệu, từ đó giảm thời gian chạy. Trên Windows, tham số CH.PARALLEL sẽ bị bỏ qua.

Bài tập này là một phần của khóa học

Xử lý dữ liệu có khả năng mở rộng trong R

Xem khóa học

Hướng dẫn bài tập

  • Đo hiệu năng hàm iotools_read_fun(), trước tiên với 1 tiến trình và sau đó với 3 tiến trình song song.

Bài tập tương tác thực hành trực tiếp

Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.

iotools_read_fun <- function(parallel) {
    fc <- file("mortgage-sample.csv", "rb")
    readLines(fc, n = 1)
    chunk.apply(fc, make_msa_table,
                CH.MAX.SIZE = 1e5, CH.PARALLEL = parallel)
    close(fc)
}

# Benchmark the new function
microbenchmark(
    # Use one process
    ___, 
    # Use three processes
    ___, 
    times = 20
)
Chỉnh sửa và Chạy Mã