aws / efawin
Unit Size

The distribution of size of units (measured in lines of code).

Intro
  • Unit size measurements show the distribution of size of units of code (methods, functions...).
  • Units are classified in four categories based on their size (lines of code): 1-20 (small units), 20-50 (medium size units), 51-100 (long units), 101+ (very long units).
  • You should aim at keeping units small (< 20 lines). Long units may become "bloaters", code that have increased to such gargantuan proportions that they are hard to work with.
Learn more...
Unit Size Overall
  • There are 261 units with 2,992 lines of code in units (33.0% of code).
    • 1 very long units (177 lines of code)
    • 5 long units (322 lines of code)
    • 23 medium size units (717 lines of code)
    • 52 small units (779 lines of code)
    • 180 very small units (997 lines of code)
5% | 10% | 23% | 26% | 33%
Legend:
101+
51-100
21-50
11-20
1-10
Unit Size per Extension
101+
51-100
21-50
11-20
1-10
c7% | 10% | 29% | 30% | 22%
h0% | 13% | 3% | 11% | 71%
Unit Size per Logical Component
primary logical decomposition
101+
51-100
21-50
11-20
1-10
interface56% | 0% | 0% | 0% | 43%
efawin0% | 11% | 34% | 34% | 19%
interface/infiniband0% | 17% | 0% | 9% | 72%
include0% | 0% | 25% | 12% | 61%
util0% | 0% | 0% | 27% | 72%
Alternative Visuals
Longest Units
Top 20 longest units
Unit# linesMcCabe index# params
int efa_load_efawin_lib()
in interface/efawin.c
177 31 0
static inline void verbs_set_ops()
in interface/infiniband/driver.h
88 7 2
int efa_post_send()
in efawin/verbs.c
62 7 3
int ibv_cmd_create_qp_ex()
in efawin/ibv_win_cmd.c
59 3 7
57 7 3
int ibv_cmd_create_cq_ex()
in efawin/ibv_win_cmd.c
56 5 8
int efa_post_recv()
in efawin/verbs.c
47 6 3
46 5 1
41 13 2
39 1 2
int ibv_cmd_modify_qp()
in efawin/ibv_win_cmd.c
37 7 5
35 6 3
34 5 1
33 5 2
31 4 2
int efa_device_init()
in efawin/efa_win_cmd.c
30 5 1
30 14 1
30 3 3
int efa_open_device()
in efawin/efawinif.c
29 5 1
int ibv_cmd_reg_mr()
in efawin/ibv_win_cmd.c
28 2 10