gen_port_setup.py 892 B

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. #!/usr/bin/python3
  2. import csv
  3. NUM_NODES=4
  4. NUM_CPUS=16
  5. RAFT_GROUP=3
  6. TOTAL_SLOTS=16384
  7. def bucket(seq, num):
  8. avg = len(seq) / float(num)
  9. out = []
  10. last = 0.0
  11. while last < len(seq):
  12. out.append(seq[int(last):int(last + avg)])
  13. last += avg
  14. return out
  15. with open('/tmp/slots.csv', mode='w') as slots_file:
  16. slots_writer = csv.writer(
  17. slots_file,
  18. delimiter=',',
  19. quotechar='"',
  20. quoting=csv.QUOTE_MINIMAL)
  21. p = 1
  22. slot_row = []
  23. for x in bucket(range(TOTAL_SLOTS), (NUM_NODES*NUM_CPUS)/RAFT_GROUP):
  24. r = "Slots: %s-%s Port: %d" %(x[0], x[-1], 19900 +p)
  25. for i in range(0,4):
  26. if len(slot_row) == NUM_NODES:
  27. slots_writer.writerow(slot_row)
  28. slot_row = []
  29. else:
  30. slot_row.append(r)
  31. p += 1
  32. slots_writer.writerow(slot_row)