diff options
| author | Michael Widenius <monty@mariadb.org> | 2018-04-17 00:08:03 +0300 |
|---|---|---|
| committer | Monty <monty@mariadb.org> | 2018-05-07 00:07:33 +0300 |
| commit | 70c1110a29a430b26990861cb753843bb00198dc (patch) | |
| tree | d50bf894a520c2086ddd8bd2713432622000f247 /include/mysql/psi/mysql_socket.h | |
| parent | 9d6dc39ad9a6c1b0a9dd373607fa1a2f9a24c335 (diff) | |
| download | mariadb-git-70c1110a29a430b26990861cb753843bb00198dc.tar.gz | |
Optimize performance schema likely/unlikely
Performance schema likely/unlikely assume that performance schema
is enabled by default, which causes a performance degradation for
default installations that doesn't have performance schema enabled.
Fixed by changing the likely/unlikely in PS to assume it's
not enabled. This can be changed by compiling with
-DPSI_ON_BY_DEFAULT
Other changes:
- Added psi_likely/psi_unlikely that is depending on
PSI_ON_BY_DEFAULT. psi_likely() is assumed to be true
if PS is enabled.
- Added likely/unlikely to some PS interface code.
- Moved pfs_enabled to mysys (was initialized but not used before)
- Added "if (pfs_likely(pfs_enabled))" around calls to PS to avoid
an extra call if PS is not enabled.
- Moved checking flag_global_instrumention before other flags
to speed up the case when PS is not enabled.
Diffstat (limited to 'include/mysql/psi/mysql_socket.h')
| -rw-r--r-- | include/mysql/psi/mysql_socket.h | 30 |
1 files changed, 15 insertions, 15 deletions
diff --git a/include/mysql/psi/mysql_socket.h b/include/mysql/psi/mysql_socket.h index 2bbe4c39849..3baabb6e57d 100644 --- a/include/mysql/psi/mysql_socket.h +++ b/include/mysql/psi/mysql_socket.h @@ -245,7 +245,7 @@ inline_mysql_start_socket_wait(PSI_socket_locker_state *state, const char *src_file, uint src_line) { struct PSI_socket_locker *locker; - if (mysql_socket.m_psi != NULL) + if (psi_likely(mysql_socket.m_psi != NULL)) { locker= PSI_SOCKET_CALL(start_socket_wait) (state, mysql_socket.m_psi, op, byte_count, src_file, src_line); @@ -262,7 +262,7 @@ inline_mysql_start_socket_wait(PSI_socket_locker_state *state, static inline void inline_mysql_end_socket_wait(struct PSI_socket_locker *locker, size_t byte_count) { - if (locker != NULL) + if (psi_likely(locker != NULL)) PSI_SOCKET_CALL(end_socket_wait)(locker, byte_count); } @@ -577,7 +577,7 @@ inline_mysql_socket_bind int result; #ifdef HAVE_PSI_SOCKET_INTERFACE - if (mysql_socket.m_psi != NULL) + if (psi_likely(mysql_socket.m_psi != NULL)) { /* Instrumentation start */ PSI_socket_locker_state state; @@ -617,7 +617,7 @@ inline_mysql_socket_getsockname int result; #ifdef HAVE_PSI_SOCKET_INTERFACE - if (mysql_socket.m_psi != NULL) + if (psi_likely(mysql_socket.m_psi != NULL)) { /* Instrumentation start */ PSI_socket_locker *locker; @@ -655,7 +655,7 @@ inline_mysql_socket_connect int result; #ifdef HAVE_PSI_SOCKET_INTERFACE - if (mysql_socket.m_psi != NULL) + if (psi_likely(mysql_socket.m_psi != NULL)) { /* Instrumentation start */ PSI_socket_locker *locker; @@ -693,7 +693,7 @@ inline_mysql_socket_getpeername int result; #ifdef HAVE_PSI_SOCKET_INTERFACE - if (mysql_socket.m_psi != NULL) + if (psi_likely(mysql_socket.m_psi != NULL)) { /* Instrumentation start */ PSI_socket_locker *locker; @@ -731,7 +731,7 @@ inline_mysql_socket_send ssize_t result; #ifdef HAVE_PSI_SOCKET_INTERFACE - if (mysql_socket.m_psi != NULL) + if (psi_likely(mysql_socket.m_psi != NULL)) { /* Instrumentation start */ PSI_socket_locker *locker; @@ -772,7 +772,7 @@ inline_mysql_socket_recv ssize_t result; #ifdef HAVE_PSI_SOCKET_INTERFACE - if (mysql_socket.m_psi != NULL) + if (psi_likely(mysql_socket.m_psi != NULL)) { /* Instrumentation start */ PSI_socket_locker *locker; @@ -813,7 +813,7 @@ inline_mysql_socket_sendto ssize_t result; #ifdef HAVE_PSI_SOCKET_INTERFACE - if (mysql_socket.m_psi != NULL) + if (psi_likely(mysql_socket.m_psi != NULL)) { /* Instrumentation start */ PSI_socket_locker *locker; @@ -855,7 +855,7 @@ inline_mysql_socket_recvfrom ssize_t result; #ifdef HAVE_PSI_SOCKET_INTERFACE - if (mysql_socket.m_psi != NULL) + if (psi_likely(mysql_socket.m_psi != NULL)) { /* Instrumentation start */ PSI_socket_locker *locker; @@ -896,7 +896,7 @@ inline_mysql_socket_getsockopt int result; #ifdef HAVE_PSI_SOCKET_INTERFACE - if (mysql_socket.m_psi != NULL) + if (psi_likely(mysql_socket.m_psi != NULL)) { /* Instrumentation start */ PSI_socket_locker *locker; @@ -935,7 +935,7 @@ inline_mysql_socket_setsockopt int result; #ifdef HAVE_PSI_SOCKET_INTERFACE - if (mysql_socket.m_psi) + if (psi_likely(mysql_socket.m_psi)) { /* Instrumentation start */ PSI_socket_locker *locker; @@ -973,7 +973,7 @@ inline_mysql_socket_listen int result; #ifdef HAVE_PSI_SOCKET_INTERFACE - if (mysql_socket.m_psi != NULL) + if (psi_likely(mysql_socket.m_psi != NULL)) { /* Instrumentation start */ PSI_socket_locker *locker; @@ -1087,7 +1087,7 @@ inline_mysql_socket_close int result; #ifdef HAVE_PSI_SOCKET_INTERFACE - if (mysql_socket.m_psi != NULL) + if (psi_likely(mysql_socket.m_psi != NULL)) { /* Instrumentation start */ PSI_socket_locker *locker; @@ -1142,7 +1142,7 @@ inline_mysql_socket_shutdown /* Instrumentation start */ #ifdef HAVE_PSI_SOCKET_INTERFACE - if (mysql_socket.m_psi != NULL) + if (psi_likely(mysql_socket.m_psi != NULL)) { PSI_socket_locker *locker; PSI_socket_locker_state state; |
