Closed
Description
I see discrepancy in behavior between iOS and Android.
On Android all react-native-mark marks are relative to the OS uptime and all manual performance.mark() calls are in unix time.
This makes it difficult to align react native startup markers with all the rest because system uptime is not exposed to RN runtime.
[
{
"duration": 0,
"entryType": "react-native-mark",
"name": "nativeLaunchStart",
"startTime": 46830987
},
{
"duration": 0,
"entryType": "react-native-mark",
"name": "nativeLaunchEnd",
"startTime": 46831916
},
{
"duration": 0,
"entryType": "react-native-mark",
"name": "processCoreReactPackageStart",
"startTime": 46900808
},
{
"duration": 0,
"entryType": "react-native-mark",
"name": "downloadStart",
"startTime": 46900096
},
{
"duration": 0,
"entryType": "react-native-mark",
"name": "preRunJsBundleStart",
"startTime": 46901261
},
{
"duration": 0,
"entryType": "react-native-mark",
"name": "preSetupReactContextStart",
"startTime": 46901261
},
{
"duration": 0,
"entryType": "react-native-mark",
"name": "createUiManagerModuleConstantsEnd",
"startTime": 46901427
},
{
"duration": 0,
"entryType": "react-native-mark",
"name": "bridgeSetupStart",
"startTime": 46900093
},
{
"duration": 0,
"entryType": "react-native-mark",
"name": "setupReactContextEnd",
"startTime": 46901437
},
{
"duration": 0,
"entryType": "react-native-mark",
"name": "contentAppeared",
"startTime": 46901773
},
{
"duration": 0,
"entryType": "react-native-mark",
"name": "vmInit",
"startTime": 46900805
},
{
"duration": 0,
"entryType": "react-native-mark",
"name": "createUiManagerModuleStart",
"startTime": 46901261
},
{
"duration": 0,
"entryType": "react-native-mark",
"name": "attachMeasuredRootViewsEnd",
"startTime": 46901437
},
{
"duration": 0,
"entryType": "react-native-mark",
"name": "reactContextThreadStart",
"startTime": 46900770
},
{
"duration": 0,
"entryType": "react-native-mark",
"name": "reactContextThreadEnd",
"startTime": 46900804
},
{
"duration": 0,
"entryType": "react-native-mark",
"name": "createViewManagersStart",
"startTime": 46901261
},
{
"duration": 0,
"entryType": "react-native-mark",
"name": "createCatalystInstanceStart",
"startTime": 46901025
},
{
"duration": 0,
"entryType": "react-native-mark",
"name": "createViewManagersEnd",
"startTime": 46901261
},
{
"duration": 0,
"entryType": "react-native-mark",
"name": "createReactContextStart",
"startTime": 46900806
},
{
"duration": 0,
"entryType": "react-native-mark",
"name": "preSetupReactContextEnd",
"startTime": 46901261
},
{
"duration": 0,
"entryType": "react-native-mark",
"name": "createUiManagerModuleEnd",
"startTime": 46901427
},
{
"duration": 0,
"entryType": "react-native-mark",
"name": "buildNativeModuleRegistryEnd",
"startTime": 46901025
},
{
"duration": 0,
"entryType": "react-native-mark",
"name": "buildNativeModuleRegistryStart",
"startTime": 46901025
},
{
"duration": 0,
"entryType": "react-native-mark",
"name": "createCatalystInstanceEnd",
"startTime": 46901260
},
{
"duration": 0,
"entryType": "react-native-mark",
"name": "setupReactContextStart",
"startTime": 46901261
},
{
"duration": 0,
"entryType": "react-native-mark",
"name": "attachMeasuredRootViewsStart",
"startTime": 46901261
},
{
"duration": 0,
"entryType": "react-native-mark",
"name": "createUiManagerModuleConstantsStart",
"startTime": 46901261
},
{
"duration": 0,
"entryType": "react-native-mark",
"name": "downloadEnd",
"startTime": 46900727
},
{
"duration": 0,
"entryType": "react-native-mark",
"name": "processCoreReactPackageEnd",
"startTime": 46900811
},
{
"detail": undefined,
"duration": 0,
"entryType": "mark",
"name": "Test",
"startTime": 1627518139392
}
]
On iOS marks are consistent and relative to performance.now():
[
{
"detail": undefined,
"duration": 0,
"entryType": "mark",
"name": "Test",
"startTime": 61274217.183125004
},
{
"duration": 0,
"entryType": "react-native-mark",
"name": "nativeLaunchStart",
"startTime": 61246463
},
{
"duration": 0,
"entryType": "react-native-mark",
"name": "nativeLaunchEnd",
"startTime": 61259702
},
{
"duration": 0,
"entryType": "react-native-mark",
"name": "downloadStart",
"startTime": 61260965
},
{
"duration": 0,
"entryType": "react-native-mark",
"name": "downloadEnd",
"startTime": 61273060
},
{
"duration": 0,
"entryType": "react-native-mark",
"name": "runJsBundleStart",
"startTime": 61273075
},
{
"duration": 0,
"entryType": "react-native-mark",
"name": "runJsBundleEnd",
"startTime": 61273772
},
{
"duration": 0,
"entryType": "react-native-mark",
"name": "bridgeSetupStart",
"startTime": 61260520
},
{
"duration": 0,
"entryType": "react-native-mark",
"name": "bridgeSetupEnd",
"startTime": 61273773
},
{
"duration": 0,
"entryType": "react-native-mark",
"name": "contentAppeared",
"startTime": 61274668
},
{
"detail": undefined,
"duration": 0,
"entryType": "metric",
"name": "bundleSize",
"startTime": 61274669.021291,
"value": 4426135
}
]
Metadata
Metadata
Assignees
Labels
No labels