Skip to content

Commit fae4163

Browse files
committed
Detect GPU
1 parent 6929263 commit fae4163

File tree

1 file changed

+36
-43
lines changed

1 file changed

+36
-43
lines changed

app/src/main/java/openscience/crowdsource/experiments/MainActivity.java

+36-43
Original file line numberDiff line numberDiff line change
@@ -16,37 +16,30 @@
1616

1717
package openscience.crowdsource.experiments;
1818

19-
import android.app.ActivityManager;
2019
import android.app.AlertDialog;
21-
import android.content.Context;
2220
import android.content.DialogInterface;
2321
import android.content.Intent;
24-
import android.content.pm.ConfigurationInfo;
2522
import android.net.Uri;
26-
import android.opengl.GLES10;
27-
import android.opengl.GLES10Ext;
2823
import android.opengl.GLSurfaceView;
2924
import android.os.AsyncTask;
3025
import android.os.Build;
26+
import android.os.Bundle;
3127
import android.os.Handler;
3228
import android.support.v7.app.AppCompatActivity;
33-
import android.os.Bundle;
3429
import android.util.Base64;
35-
import android.util.DisplayMetrics;
36-
import android.util.Log;
3730
import android.view.View;
31+
import android.view.ViewGroup;
3832
import android.widget.Button;
3933
import android.widget.CheckBox;
4034
import android.widget.EditText;
41-
import android.widget.Toast;
42-
4335
import org.ctuning.openme.openme;
4436
import org.json.JSONException;
4537
import org.json.JSONObject;
4638

39+
import javax.microedition.khronos.egl.EGLConfig;
40+
import javax.microedition.khronos.opengles.GL10;
4741
import java.io.BufferedInputStream;
4842
import java.io.BufferedReader;
49-
import java.io.DataInputStream;
5043
import java.io.File;
5144
import java.io.FileInputStream;
5245
import java.io.FileNotFoundException;
@@ -61,15 +54,11 @@
6154
import java.security.MessageDigest;
6255
import java.security.NoSuchAlgorithmException;
6356
import java.util.ArrayList;
64-
import java.util.Iterator;
6557
import java.util.List;
6658
import java.util.zip.ZipEntry;
6759
import java.util.zip.ZipInputStream;
6860

69-
import javax.microedition.khronos.egl.EGLConfig;
70-
import javax.microedition.khronos.opengles.GL10;
71-
72-
public class MainActivity extends AppCompatActivity {
61+
public class MainActivity extends AppCompatActivity implements GLSurfaceView.Renderer {
7362

7463
String welcome = "We would like to thank you for participating in experiment crowdsourcing " +
7564
"to collaboratively solve complex problems!\n\n" +
@@ -128,6 +117,7 @@ public class MainActivity extends AppCompatActivity {
128117

129118
static Button b_clean;
130119
EditText t_email;
120+
private GLSurfaceView glSurfaceView;
131121

132122
String fpack="ck-pack.zip";
133123

@@ -171,33 +161,9 @@ protected void onCreate(Bundle savedInstanceState) {
171161
t_email.setText(email.trim());
172162
}
173163

174-
//Get GPU name **************************************************
175-
new Thread(new Runnable(){
176-
177-
@Override
178-
public void run()
179-
{
180-
try
181-
{
182-
Thread.sleep(800);
183-
MainActivity.this.runOnUiThread(new Runnable(){
184-
185-
@Override
186-
public void run()
187-
{
188-
pf_gpu_vendor=String.valueOf(GLES10.glGetString(GL10.GL_VENDOR));
189-
if (pf_gpu_vendor.equals("null")) pf_gpu_vendor="";
190-
191-
String x=String.valueOf(GLES10.glGetString(GL10.GL_RENDERER));
192-
if (x.equals("null")) pf_gpu="";
193-
else pf_gpu=pf_gpu_vendor + " " + x;
194-
}
195-
});
196-
}
197-
catch (InterruptedException e)
198-
{}
199-
}
200-
}).start();
164+
this.glSurfaceView = new GLSurfaceView(this);
165+
this.glSurfaceView.setRenderer(this);
166+
((ViewGroup) log.getParent()).addView(this.glSurfaceView);
201167

202168
try
203169
{
@@ -548,6 +514,33 @@ private List<Double[]> get_cpu_freqs() {
548514
return cpu_list;
549515
}
550516

517+
@Override
518+
public void onSurfaceCreated(GL10 gl10, EGLConfig config) {
519+
pf_gpu_vendor = gl10.glGetString(GL10.GL_VENDOR);
520+
if (pf_gpu_vendor.equals("null")) pf_gpu_vendor = "";
521+
522+
String x = gl10.glGetString(GL10.GL_RENDERER);
523+
if (x.equals("null")) pf_gpu = "";
524+
else pf_gpu = pf_gpu_vendor + " " + x;
525+
526+
runOnUiThread(new Runnable() {
527+
@Override
528+
public void run() {
529+
glSurfaceView.setVisibility(View.GONE);
530+
}
531+
});
532+
}
533+
534+
@Override
535+
public void onSurfaceChanged(GL10 gl, int width, int height) {
536+
// no-op
537+
}
538+
539+
@Override
540+
public void onDrawFrame(GL10 gl) {
541+
// no-op
542+
}
543+
551544
/*************************************************************************/
552545
private class runCodeAsync extends AsyncTask<String,String,String> {
553546

0 commit comments

Comments
 (0)