mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-09-30 05:30:51 +00:00
Fixed styling v2
This commit is contained in:
parent
f4f43ee8ab
commit
396c9e4279
@ -73,7 +73,7 @@ namespace DB
|
|||||||
return &Logger::get("PerfEventsCounters");
|
return &Logger::get("PerfEventsCounters");
|
||||||
}
|
}
|
||||||
|
|
||||||
long long PerfEventsCounters::getRawValue(int event_type, int event_config) const
|
Int64 PerfEventsCounters::getRawValue(int event_type, int event_config) const
|
||||||
{
|
{
|
||||||
for (size_t i = 0; i < NUMBER_OF_RAW_EVENTS; ++i)
|
for (size_t i = 0; i < NUMBER_OF_RAW_EVENTS; ++i)
|
||||||
{
|
{
|
||||||
@ -86,37 +86,37 @@ namespace DB
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int openPerfEvent(perf_event_attr *hw_event, pid_t pid, int cpu, int group_fd, unsigned long flags)
|
static int openPerfEvent(perf_event_attr *hw_event, pid_t pid, int cpu, int group_fd, UInt64 flags)
|
||||||
{
|
{
|
||||||
return static_cast<int>(syscall(SYS_perf_event_open, hw_event, pid, cpu, group_fd, flags));
|
return static_cast<int>(syscall(SYS_perf_event_open, hw_event, pid, cpu, group_fd, flags));
|
||||||
}
|
}
|
||||||
|
|
||||||
static bool getPerfEventParanoid(int & result)
|
static bool getPerfEventParanoid(Int32 & result)
|
||||||
{
|
{
|
||||||
// the longest possible variant: "-1\0"
|
// the longest possible variant: "-1\0"
|
||||||
constexpr int MAX_LENGTH = 3;
|
constexpr Int32 max_length = 3;
|
||||||
|
|
||||||
FILE * fp = fopen("/proc/sys/kernel/perf_event_paranoid", "r");
|
FILE * fp = fopen("/proc/sys/kernel/perf_event_paranoid", "r");
|
||||||
if (fp == nullptr)
|
if (fp == nullptr)
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
char str[MAX_LENGTH];
|
char str[max_length];
|
||||||
char * res = fgets(str, MAX_LENGTH, fp);
|
char * res = fgets(str, max_length, fp);
|
||||||
fclose(fp);
|
fclose(fp);
|
||||||
if (res == nullptr)
|
if (res == nullptr)
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
str[MAX_LENGTH - 1] = '\0';
|
str[max_length - 1] = '\0';
|
||||||
long value = strtol(str, nullptr, 10);
|
Int64 value = strtol(str, nullptr, 10);
|
||||||
// the only way to be incorrect is to not be a number
|
// the only way to be incorrect is to not be a number
|
||||||
if (value == 0 && errno != 0)
|
if (value == 0 && errno != 0)
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
result = static_cast<int>(value);
|
result = static_cast<Int32>(value);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void perfEventOpenDisabled(int perf_event_paranoid, bool has_cap_sys_admin, int perf_event_type, int perf_event_config, int & event_file_descriptor)
|
static void perfEventOpenDisabled(Int32 perf_event_paranoid, bool has_cap_sys_admin, int perf_event_type, int perf_event_config, int & event_file_descriptor)
|
||||||
{
|
{
|
||||||
perf_event_attr pe = perf_event_attr();
|
perf_event_attr pe = perf_event_attr();
|
||||||
pe.type = perf_event_type;
|
pe.type = perf_event_type;
|
||||||
@ -135,7 +135,7 @@ namespace DB
|
|||||||
if (counters.perf_events_recording)
|
if (counters.perf_events_recording)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
int perf_event_paranoid = 0;
|
Int32 perf_event_paranoid = 0;
|
||||||
bool is_pref_available = getPerfEventParanoid(perf_event_paranoid);
|
bool is_pref_available = getPerfEventParanoid(perf_event_paranoid);
|
||||||
if (!is_pref_available)
|
if (!is_pref_available)
|
||||||
{
|
{
|
||||||
@ -193,8 +193,8 @@ namespace DB
|
|||||||
if (fd == -1)
|
if (fd == -1)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
constexpr ssize_t bytesToRead = sizeof(counters.raw_event_values[0]);
|
constexpr ssize_t bytes_to_read = sizeof(counters.raw_event_values[0]);
|
||||||
if (read(fd, &counters.raw_event_values[i], bytesToRead) != bytesToRead)
|
if (read(fd, &counters.raw_event_values[i], bytes_to_read) != bytes_to_read)
|
||||||
{
|
{
|
||||||
LOG_WARNING(getLogger(), "Can't read event value from file descriptor: " << fd);
|
LOG_WARNING(getLogger(), "Can't read event value from file descriptor: " << fd);
|
||||||
counters.raw_event_values[i] = 0;
|
counters.raw_event_values[i] = 0;
|
||||||
@ -220,13 +220,13 @@ namespace DB
|
|||||||
}
|
}
|
||||||
|
|
||||||
// process custom events which depend on the raw ones
|
// process custom events which depend on the raw ones
|
||||||
long long hw_cpu_cycles = counters.getRawValue(PERF_TYPE_HARDWARE, PERF_COUNT_HW_CPU_CYCLES);
|
Int64 hw_cpu_cycles = counters.getRawValue(PERF_TYPE_HARDWARE, PERF_COUNT_HW_CPU_CYCLES);
|
||||||
long long hw_ref_cpu_cycles = counters.getRawValue(PERF_TYPE_HARDWARE, PERF_COUNT_HW_REF_CPU_CYCLES);
|
Int64 hw_ref_cpu_cycles = counters.getRawValue(PERF_TYPE_HARDWARE, PERF_COUNT_HW_REF_CPU_CYCLES);
|
||||||
|
|
||||||
long long instructions_per_cpu_scaled = hw_cpu_cycles != 0
|
Int64 instructions_per_cpu_scaled = hw_cpu_cycles != 0
|
||||||
? counters.getRawValue(PERF_TYPE_HARDWARE, PERF_COUNT_HW_INSTRUCTIONS) / hw_cpu_cycles
|
? counters.getRawValue(PERF_TYPE_HARDWARE, PERF_COUNT_HW_INSTRUCTIONS) / hw_cpu_cycles
|
||||||
: 0;
|
: 0;
|
||||||
long long instructions_per_cpu = hw_ref_cpu_cycles != 0
|
Int64 instructions_per_cpu = hw_ref_cpu_cycles != 0
|
||||||
? counters.getRawValue(PERF_TYPE_HARDWARE, PERF_COUNT_HW_INSTRUCTIONS) / hw_ref_cpu_cycles
|
? counters.getRawValue(PERF_TYPE_HARDWARE, PERF_COUNT_HW_INSTRUCTIONS) / hw_ref_cpu_cycles
|
||||||
: 0;
|
: 0;
|
||||||
|
|
||||||
|
@ -177,7 +177,7 @@ struct PerfEventsCounters
|
|||||||
|
|
||||||
int events_descriptors[NUMBER_OF_RAW_EVENTS]{};
|
int events_descriptors[NUMBER_OF_RAW_EVENTS]{};
|
||||||
// temp array just to not create it each time event processing finishes
|
// temp array just to not create it each time event processing finishes
|
||||||
long long raw_event_values[NUMBER_OF_RAW_EVENTS]{};
|
Int64 raw_event_values[NUMBER_OF_RAW_EVENTS]{};
|
||||||
bool perf_events_recording = false;
|
bool perf_events_recording = false;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@ -194,7 +194,7 @@ private:
|
|||||||
|
|
||||||
static Logger * getLogger();
|
static Logger * getLogger();
|
||||||
|
|
||||||
[[nodiscard]] long long getRawValue(int event_type, int event_config) const;
|
[[nodiscard]] Int64 getRawValue(int event_type, int event_config) const;
|
||||||
#endif
|
#endif
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user