Tài trợ khoa học xã hội với futures
Bạn làm việc cho một quỹ từ thiện. Quỹ trao các khoản tài trợ nghiên cứu cho những trường đại học có điểm xếp hạng nghiên cứu khoa học xã hội thuộc nhóm một phần trăm đứng đầu trong nước. Vì vậy, mỗi năm cần tính một giá trị ngưỡng (cutoff) cho điểm xếp hạng nghiên cứu.
Bạn có một list, rating_list, trong không gian làm việc. Mỗi phần tử chứa điểm xếp hạng nghiên cứu của các trường đại học trong một quốc gia. Bạn cũng có sẵn generate_cutoff_future(). Hàm này tạo một future để tính giá trị ngưỡng. Tuy nhiên, quản lý của bạn chưa chắc chắn về lợi thế của futures so với các phương pháp song song khác. Bạn cần chứng minh rằng futures cho phép chạy tuần tự và song song mà không phải thay đổi mã nguồn thực tế. Gói future đã được nạp sẵn cho bạn.
Bài tập này là một phần của khóa học
Lập trình song song trong R
Hướng dẫn bài tập
- Tạo các future chạy tuần tự bằng cách áp dụng
generate_cutoff_future()lênrating_listvớilapply()dưới một kế hoạch tuần tự. - Trích xuất giá trị từ các future tuần tự.
- Tạo các future chạy song song dưới một kế hoạch song song.
- Trích xuất giá trị từ các future 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.
plan(sequential)
# Create futures under sequential plan
seq_futures <- ___(___, ___)
# Extract values of sequential futures
seq_values <- ___(___)
plan(multisession, workers = 4)
# Create futures under multisession plan
par_futures <- ___(___, ___)
# Extract values of parallel futures
par_values <- ___(___)
plan(sequential)
cbind(seq_values, par_values)