diff --git a/src/scheduler.c b/src/scheduler.c
index b2466d55104dbb68d7efed008af1290c4fd73212..5f379a8bacdb5903e20f0c7434c11a0a3d4bbbde 100644
--- a/src/scheduler.c
+++ b/src/scheduler.c
@@ -1038,6 +1038,12 @@ void scheduler_reweight(struct scheduler *s, int verbose) {
       case task_type_timestep:
         cost = wscale * t->ci->count;
         break;
+      case task_type_send:
+        cost = 10 * wscale * t->ci->count * t->ci->count;
+        break;
+      case task_type_recv:
+        cost = 5 * wscale * t->ci->count * t->ci->count;
+        break;
       default:
         cost = 0;
         break;