Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8362068

NMT experiment: do we need pre-init cache?

XMLWordPrintable

    • Icon: Enhancement Enhancement
    • Resolution: Unresolved
    • Icon: P4 P4
    • tbd
    • None
    • hotspot

      We use a special cache of the pointers, so that we can later tell which ones were created before NMT was initialized, so that we know which have NMT header, so that we know how to free them.

      The pattern of malloc/free seems to be always the same (I ran HelloWorld, J2Demo and SwingSet2). We can possibly take advantage of that.

      There are 2 threads involved, but those are used sequentially and always in the same order at the same call, so for all purposes it is virtually single threaded behavior.

      Investigate...


      Here is the pattern:

        MALLOC( 32) 1
        MALLOC( 32) 2
        MALLOC( 32) 3
        MALLOC( 32) 4
        MALLOC( 32) 5
        MALLOC( 32) 6
        MALLOC( 56) 7
        MALLOC( 24) 8
        MALLOC( 56) 9
        MALLOC( 24) 10
        MALLOC( 56) 11
        MALLOC( 24) 12
        MALLOC( 56) 13
        MALLOC( 24) 14
        MALLOC( 80) 15
        MALLOC( 80) 16
        MALLOC( 56) 17
        MALLOC( 8) 18
        MALLOC( 40) 19
        MALLOC( 40) 20
        MALLOC( 56) 21
        MALLOC( 560) 22
        MALLOC( 56) 23
        MALLOC( 560) 24
        MALLOC( 800) 25
        MALLOC( 800) 26
        MALLOC( 800) 27
        MALLOC( 8192) 28
        MALLOC( 56) 29
        MALLOC( 80) 30
        MALLOC( 56) 31
        MALLOC( 40) 32
        MALLOC( 56) 33
        MALLOC( 72) 34
        MALLOC( 32) 35
        MALLOC( 32) 36
        MALLOC( 32) 37
        MALLOC( 32) 38
        MALLOC( 32) 39
        MALLOC( 32) 40
        MALLOC( 24) 41
        MALLOC( 96) 42
        MALLOC( 13) 43
        MALLOC( 8) 44
        MALLOC( 72) 45
        MALLOC( 8) 46
        MALLOC( 32) 47
        MALLOC( 35) 48
        MALLOC( 27) 49
        MALLOC( 32) 50
        MALLOC( 29) 51
        MALLOC( 16) 52
        MALLOC( 32) 53
        MALLOC( 25) 54
        MALLOC( 13) 55
        MALLOC( 32) 56
        MALLOC( 10) 57
        MALLOC( 10) 58
        MALLOC( 32) 59
        MALLOC( 20) 60
        MALLOC( 13) 61
        MALLOC( 32) 62
        MALLOC( 22) 63
        MALLOC( 32) 64
        MALLOC( 18) 65
        MALLOC( 32) 66
        MALLOC( 10) 67
        MALLOC( 32) 68
        MALLOC( 1) 69
        MALLOC( 16) 70
        MALLOC( 32) 71
        MALLOC( 27) 72
        MALLOC( 1175) 73
        MALLOC( 94) 74
        MALLOC( 90) 75
        MALLOC( 102) 76
        MALLOC( 102) 77
             FREE( 112) 0
        MALLOC( 147) 78
        MALLOC( 144) 79
             FREE( 160) 1
        MALLOC( 240) 80
             FREE( 1536) 2
        MALLOC( 32) 81
        MALLOC( 19) 82
        MALLOC( 29) 83
        MALLOC( 32) 84
        MALLOC( 3) 85
        MALLOC( 30) 86
        MALLOC( 32) 87
        MALLOC( 19) 88
        MALLOC( 15) 89
        MALLOC( 224) 90
        MALLOC( 224) 91
        MALLOC( 16) 92
        MALLOC( 24) 93
        MALLOC( 24) 94
        MALLOC( 24) 95
        MALLOC( 24) 96
        MALLOC( 24) 97
        MALLOC( 24) 98
        MALLOC( 24) 99
        MALLOC( 24) 100
        MALLOC( 24) 101
        MALLOC( 24) 102
        MALLOC( 24) 103
        MALLOC( 24) 104
        MALLOC( 24) 105
        MALLOC( 24) 106
        MALLOC( 24) 107
        MALLOC( 24) 108
        MALLOC( 24) 109
        MALLOC( 24) 110
        MALLOC( 24) 111
        MALLOC( 24) 112
        MALLOC( 24) 113
        MALLOC( 24) 114
        MALLOC( 24) 115
        MALLOC( 24) 116
        MALLOC( 24) 117
        MALLOC( 24) 118
        MALLOC( 24) 119
        MALLOC( 24) 120
        MALLOC( 24) 121
        MALLOC( 24) 122
        MALLOC( 24) 123
        MALLOC( 24) 124
        MALLOC( 24) 125
        MALLOC( 24) 126
        MALLOC( 24) 127
        MALLOC( 24) 128
        MALLOC( 24) 129
        MALLOC( 24) 130
        MALLOC( 24) 131
        MALLOC( 24) 132
        MALLOC( 24) 133
        MALLOC( 24) 134
        MALLOC( 24) 135
        MALLOC( 24) 136
        MALLOC( 24) 137
        MALLOC( 24) 138
        MALLOC( 24) 139
        MALLOC( 24) 140
        MALLOC( 24) 141
        MALLOC( 24) 142
        MALLOC( 24) 143
        MALLOC( 24) 144
        MALLOC( 24) 145
        MALLOC( 24) 146
        MALLOC( 24) 147
        MALLOC( 24) 148
        MALLOC( 24) 149
        MALLOC( 24) 150
        MALLOC( 24) 151
        MALLOC( 24) 152
        MALLOC( 24) 153
        MALLOC( 24) 154
        MALLOC( 24) 155
        MALLOC( 24) 156
        MALLOC( 24) 157
        MALLOC( 24) 158
        MALLOC( 24) 159
        MALLOC( 24) 160
        MALLOC( 24) 161
        MALLOC( 24) 162
        MALLOC( 24) 163
        MALLOC( 24) 164
        MALLOC( 24) 165
        MALLOC( 24) 166
        MALLOC( 24) 167
        MALLOC( 24) 168
        MALLOC( 24) 169
        MALLOC( 24) 170
        MALLOC( 24) 171
        MALLOC( 24) 172
        MALLOC( 24) 173
        MALLOC( 24) 174
        MALLOC( 24) 175
        MALLOC( 24) 176
        MALLOC( 24) 177
        MALLOC( 24) 178
        MALLOC( 24) 179
        MALLOC( 24) 180
        MALLOC( 24) 181
        MALLOC( 24) 182
        MALLOC( 24) 183
        MALLOC( 24) 184
        MALLOC( 24) 185
        MALLOC( 24) 186
        MALLOC( 24) 187
        MALLOC( 24) 188
        MALLOC( 24) 189
        MALLOC( 24) 190
        MALLOC( 24) 191
        MALLOC( 24) 192
        MALLOC( 24) 193
        MALLOC( 24) 194
        MALLOC( 24) 195
        MALLOC( 24) 196
        MALLOC( 24) 197
        MALLOC( 24) 198
        MALLOC( 24) 199
        MALLOC( 24) 200
        MALLOC( 24) 201
        MALLOC( 24) 202
        MALLOC( 24) 203
        MALLOC( 24) 204
        MALLOC( 24) 205
        MALLOC( 24) 206
        MALLOC( 24) 207
        MALLOC( 24) 208
        MALLOC( 24) 209
        MALLOC( 24) 210
        MALLOC( 24) 211
        MALLOC( 24) 212
        MALLOC( 24) 213
        MALLOC( 24) 214
        MALLOC( 24) 215
        MALLOC( 24) 216
        MALLOC( 24) 217
        MALLOC( 24) 218
        MALLOC( 24) 219
        MALLOC( 24) 220
        MALLOC( 24) 221
        MALLOC( 24) 222
        MALLOC( 24) 223
        MALLOC( 24) 224
        MALLOC( 24) 225
        MALLOC( 24) 226
        MALLOC( 24) 227
        MALLOC( 24) 228
        MALLOC( 24) 229
        MALLOC( 24) 230
        MALLOC( 24) 231
        MALLOC( 24) 232
        MALLOC( 24) 233
        MALLOC( 24) 234
        MALLOC( 24) 235
        MALLOC( 24) 236
        MALLOC( 24) 237
        MALLOC( 24) 238
        MALLOC( 24) 239
        MALLOC( 24) 240
        MALLOC( 24) 241
        MALLOC( 24) 242
        MALLOC( 24) 243
        MALLOC( 24) 244
        MALLOC( 24) 245
        MALLOC( 24) 246
        MALLOC( 24) 247
        MALLOC( 24) 248
        MALLOC( 24) 249
        MALLOC( 24) 250
        MALLOC( 24) 251
        MALLOC( 24) 252
        MALLOC( 24) 253
        MALLOC( 24) 254
        MALLOC( 24) 255
        MALLOC( 24) 256
        MALLOC( 24) 257
        MALLOC( 24) 258
        MALLOC( 24) 259
        MALLOC( 24) 260
        MALLOC( 24) 261
        MALLOC( 24) 262
        MALLOC( 24) 263
        MALLOC( 24) 264
        MALLOC( 24) 265
        MALLOC( 24) 266
        MALLOC( 24) 267
        MALLOC( 24) 268
        MALLOC( 24) 269
        MALLOC( 24) 270
        MALLOC( 24) 271
        MALLOC( 24) 272
        MALLOC( 24) 273
        MALLOC( 24) 274
        MALLOC( 24) 275
        MALLOC( 24) 276
        MALLOC( 24) 277
        MALLOC( 24) 278
        MALLOC( 24) 279
        MALLOC( 24) 280
        MALLOC( 24) 281
        MALLOC( 24) 282
        MALLOC( 24) 283
        MALLOC( 24) 284
        MALLOC( 24) 285
        MALLOC( 24) 286
        MALLOC( 24) 287
        MALLOC( 24) 288
        MALLOC( 24) 289
        MALLOC( 24) 290
        MALLOC( 24) 291
        MALLOC( 24) 292
        MALLOC( 24) 293
        MALLOC( 24) 294
        MALLOC( 24) 295
        MALLOC( 24) 296
        MALLOC( 24) 297
        MALLOC( 24) 298
        MALLOC( 24) 299
        MALLOC( 24) 300
        MALLOC( 24) 301
        MALLOC( 24) 302
        MALLOC( 24) 303
        MALLOC( 24) 304
        MALLOC( 24) 305
        MALLOC( 24) 306
        MALLOC( 24) 307
        MALLOC( 24) 308
        MALLOC( 24) 309
        MALLOC( 24) 310
        MALLOC( 24) 311
        MALLOC( 24) 312
        MALLOC( 24) 313
        MALLOC( 24) 314
        MALLOC( 24) 315
        MALLOC( 24) 316
        MALLOC( 24) 317
        MALLOC( 24) 318
        MALLOC( 24) 319
        MALLOC( 24) 320
        MALLOC( 24) 321
        MALLOC( 24) 322
        MALLOC( 24) 323
        MALLOC( 24) 324
        MALLOC( 24) 325
        MALLOC( 24) 326
        MALLOC( 24) 327
        MALLOC( 24) 328
        MALLOC( 24) 329
        MALLOC( 24) 330
        MALLOC( 24) 331
        MALLOC( 24) 332
        MALLOC( 24) 333
        MALLOC( 24) 334
        MALLOC( 24) 335
        MALLOC( 24) 336
        MALLOC( 24) 337
        MALLOC( 24) 338
        MALLOC( 24) 339
        MALLOC( 24) 340
        MALLOC( 24) 341
        MALLOC( 24) 342
        MALLOC( 24) 343
        MALLOC( 24) 344
        MALLOC( 24) 345
        MALLOC( 24) 346
        MALLOC( 24) 347
        MALLOC( 24) 348
        MALLOC( 24) 349
        MALLOC( 24) 350
        MALLOC( 24) 351
        MALLOC( 24) 352
        MALLOC( 24) 353
        MALLOC( 24) 354
        MALLOC( 24) 355
        MALLOC( 24) 356
        MALLOC( 24) 357
        MALLOC( 24) 358
        MALLOC( 16) 359
             FREE( 16) 3
        MALLOC( 16) 360
        MALLOC( 32) 361
             FREE( 16) 4
        MALLOC( 64) 362
             FREE( 32) 5
        MALLOC( 128) 363
             FREE( 64) 6
        MALLOC( 20) 364
             FREE( 32) 7
        MALLOC( 8) 365
        MALLOC( 33) 366
        MALLOC( 8) 367
        MALLOC( 16) 368
        MALLOC( 89) 369
             FREE( 16) 8
             FREE( 16) 9
        MALLOC( 17) 370
        MALLOC( 89) 371
        MALLOC( 32) 372
        MALLOC( 89) 373
        MALLOC( 17) 374
             FREE( 32) 10
        MALLOC( 18) 375
        MALLOC( 32) 376
        MALLOC( 13) 377
        MALLOC( 18) 378
             FREE( 32) 11
             FREE( 128) 12
        MALLOC( 64) 379
        MALLOC( 184) 380
        MALLOC( 64) 381



            gziemski Gerard Ziemski
            gziemski Gerard Ziemski
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated: