using highest 2 bits as tag
This commit is contained in:
parent
f3f6a78b07
commit
2a7b7c39bb
2 changed files with 10 additions and 10 deletions
|
|
@ -25,8 +25,13 @@ typedef uint64_t jobid_t;
|
|||
|
||||
#define N_JOBID_BITS (sizeof(jobid_t) * 8)
|
||||
|
||||
#define N_TAG_BITS (2)
|
||||
#define TAG_SHIFT (N_JOBID_BITS - N_TAG_BITS)
|
||||
|
||||
#define TAG_JOB_ARRAY (0x01)
|
||||
|
||||
#define N_CLUSTER_ID_BITS (6)
|
||||
#define CLUSTER_ID_SHIFT (N_JOBID_BITS - N_CLUSTER_ID_BITS)
|
||||
#define CLUSTER_ID_SHIFT (TAG_SHIFT - N_CLUSTER_ID_BITS)
|
||||
|
||||
#define N_APISERVER_ID_BITS (4)
|
||||
#define APISERVER_ID_SHIFT (CLUSTER_ID_SHIFT - N_APISERVER_ID_BITS)
|
||||
|
|
@ -34,13 +39,8 @@ typedef uint64_t jobid_t;
|
|||
#define N_TIMESTAMP_BITS (32)
|
||||
#define TIMESTAMP_SHIFT (APISERVER_ID_SHIFT - N_TIMESTAMP_BITS)
|
||||
|
||||
#define N_TAG_BITS (2)
|
||||
#define TAG_SHIFT (TIMESTAMP_SHIFT - N_TAG_BITS)
|
||||
|
||||
#define N_ARRAY_IDX_BITS (15)
|
||||
|
||||
#define TAG_JOB_ARRAY (0x01)
|
||||
|
||||
#define N_SEQENCE_BITS \
|
||||
(N_JOBID_BITS - N_CLUSTER_ID_BITS - N_APISERVER_ID_BITS - N_TIMESTAMP_BITS \
|
||||
- N_TAG_BITS)
|
||||
|
|
|
|||
|
|
@ -8,18 +8,18 @@
|
|||
static void test_cluster_id(void)
|
||||
{
|
||||
TEST_ASSERT_TRUE(MAX_CLUSTER_ID == 63);
|
||||
TEST_ASSERT_TRUE(CLUSTER_ID_SHIFT == 58);
|
||||
TEST_ASSERT_TRUE(CLUSTER_ID_SHIFT == 56);
|
||||
}
|
||||
|
||||
static void test_apiserver_id(void)
|
||||
{
|
||||
TEST_ASSERT_TRUE(MAX_APISERVER_ID == 15);
|
||||
TEST_ASSERT_TRUE(APISERVER_ID_SHIFT == 54);
|
||||
TEST_ASSERT_TRUE(APISERVER_ID_SHIFT == 52);
|
||||
}
|
||||
|
||||
static void test_timestamp(void) { TEST_ASSERT_TRUE(TIMESTAMP_SHIFT == 22); }
|
||||
static void test_timestamp(void) { TEST_ASSERT_TRUE(TIMESTAMP_SHIFT == 20); }
|
||||
|
||||
static void test_tag(void) { TEST_ASSERT_TRUE(TAG_SHIFT == 20); }
|
||||
static void test_tag(void) { TEST_ASSERT_TRUE(TAG_SHIFT == 62); }
|
||||
|
||||
static void test_array(void)
|
||||
{
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue