As I could never solve my graphics problems, I never used Ubuntu on my desktop. After a long time, I decided to install Ubuntu but still couldn't succeed.
I installed Ubuntu 18.04.1 with nomodeset, as it wasn't run without it. I checked the "install the third party" option, it was the option that helped me running Ubuntu without nomodeset I guess.
So I installed the Ubuntu and logged in. But I had a performance drop, like laggy scrolling down on browsers and laggy window dragging. The system also wasn't all smooth in general. I tried using Unity Engine, which didn't go beyond 5-10 fps, and Unigine Heaven benchmark, which gave me 1-2 fps and lock the system that I needed to reboot.
./amdgpu-pro-install -y --opencl=legacy
I run this command, it succeeded, when I rebooted it freezes on Ubuntu logo, after 5 minutes of waiting it went to black screen. Num lock wasn't reacting so the computer was being locked.
I couldn't find any similar problem and solution. So I went to recovery mode and run amdgpu-pro-uninstall and made the system working again. It is running open source radeon driver now. I thought amdgpu didn't support my card but I realized it does
lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 18.04.1 LTS
Release: 18.04
Codename: bionic
lspci -nnk | egrep "VGA|3D|Display" -A2
25:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Tahiti LE [Radeon HD 7870 XT] [1002:679e]
Subsystem: PC Partner Limited / Sapphire Technology Tahiti LE [Radeon HD 7870 XT] [174b:e246]
Kernel driver in use: radeon
glxinfo | grep render
direct rendering: Yes
GLX_MESA_multithread_makecurrent, GLX_MESA_query_renderer,
GLX_EXT_visual_rating, GLX_MESA_copy_sub_buffer, GLX_MESA_query_renderer,
Extended renderer info (GLX_MESA_query_renderer):
OpenGL renderer string: llvmpipe (LLVM 7.0, 128 bits)
GL_ARB_conditional_render_inverted, GL_ARB_conservative_depth,
GL_MESA_ycbcr_texture, GL_NV_conditional_render, GL_NV_depth_clamp,
GL_ARB_conditional_render_inverted, GL_ARB_conservative_depth,
GL_NV_conditional_render, GL_NV_depth_clamp, GL_NV_fog_distance,
GL_OES_element_index_uint, GL_OES_fbo_render_mipmap,
what could be causing this? Thanks