"no responde" frente a "todavía pensando"A veces configuro algunos trabajos realmente grandes en JMP Pro 16 en mi Macbook Pro (32 GB de RAM), y después de unos minutos, mi Mac me dice "La aplicación no responde", lo cual es confirmado por el Administrador de tareas. Sin embargo, muchas veces, si la plataforma en particular que estoy usando tiene una barra de estado/progreso, la veré avanzar (aunque sea lentamente). ¿Es posible saber si el script aún se está ejecutando o si la aplicación realmente se ha "rendido", en cuyo caso tendría que reiniciar JMP?
En esta misma nota, es extraño que no pueda "transferir" efectivamente más RAM o CPU a JMP Pro. En este momento, tengo una aplicación bloqueada para un trabajo enorme (un análisis PLS con más de 100 000 predictores), pero solo usa 4 GB de RAM y tengo mucho de sobra. Siento que alguna vez hubo una forma de entrar y cambiar la asignación de RAM. ¿Cuál es el punto de toda esta memoria RAM cuando mi Mac solo usa de 5 a 10 GB? (lo siento, esto podría ser más un problema de Mac que de JMP).
AnalíticaMac OSRe: "no responde" vs. "todavía pensando"Gracias a los dos. Tengo JMP de 64 bits instalado. He visto este tipo de cuadro de título de actualización ingenioso para ciertos complementos que uso, y definitivamente es muy útil para trabajos grandes. Tengo JMP Pro 16 y el EA3 para JMP Pro 17. Me pregunto si podrían estar vinculados a donde el progreso en uno se refleja en el otro.
Mi problema parece ser algo específico de la plataforma (y del problema) y habla de la necesidad de una reducción de la variable de respuesta (sin duda, un área ENORME de investigación e interés). Si ejecuto un trabajo muy grande bajo regresión generalizada, me dará una barra de progreso. Para los mínimos cuadrados parciales, A VECES (pero no siempre) me mostrará un mensaje de progreso de "validación cruzada para encontrar la mejor dimensión", pero no todo el tiempo. Creo que parte de esto es mi culpa, ya que le di a JMP Pro una tarea poco práctica como una especie de ejercicio de pensamiento: 1-16 Y (es decir, no demasiados) frente a 500,000 X (factorial de tercer orden de 96 predictores). Algunos de estos términos de tercer orden SÍ tienen sentido para probar, pero ciertamente no todos los 500,000. Pero, por supuesto, eliminar manualmente 100 000 términos no sería práctico, por lo que puedo jugar tratando de reducir la complejidad del modelo usando DOE o tal vez seleccionando al azar subconjuntos aleatorios de los 96 predictores para probar en factoriales de orden superior. También estoy considerando usar la "mejor submuestra" de Gen-Reg o incluso la pantalla de predicción para eliminar los términos no informativos, pero luego me preocupa que pueda excluir un término que no es útil por sí mismo pero SÍ es útil al interactuar con otro término. Basado en el excelente seminario web de Clay Barker ayer, parece que la selección avanzada recortada y varios otros métodos de estimación Gen-Reg en realidad hacen algo como esto, donde consideran la interacción de un término nuevo con un término anterior, manteniéndolo si reduce el AICc ( o cualquier métrica de respuesta que use) y excluyéndola si no, entonces tal vez simplemente colocando los 96 predictores (sin interacciones ni cuadráticas) en Gen-Reg, usando la selección hacia adelante podada, identifique el conjunto óptimo de predictores (que idealmente será < 96), luego pruebe factoriales de segundo o tercer orden de aquellos en PLS o Gen-Reg. Voy a probar esto hoy.
Re: "no responde" vs. "todavía pensando"También está el comando de título:
n = 10000000;
for (i = 1, i <= n, i++,
x = i^2 + i;
if (mod(i, 10000) == 0,
caption("Iteration # " || char(i));
wait(0);
);
);
caption(remove);
wait(0);Re: "no responde" vs. "todavía pensando"Hola @abmayfield ,
¿Puede verificar que tiene instalada la versión de 64 bits de JMP?
En cuanto a los scripts de seguimiento: aquí hay algunas ideas. He usado cada uno de ellos en diferentes situaciones:
- Cree una ventana en la que periódicamente escriba mensajes de estado, por ejemplo, cada 10000 iteraciones de un bucle for podría escribir un valor en el cuadro de texto y luego incluir '<
- Escriba en un archivo de registro que puede monitorear con un editor de texto. También puede leer desde un archivo de texto para decidir si continuar, así que de vez en cuando abra un archivo y verifique si contiene 'detener'.Una vez más, no hagas esto con demasiada frecuencia.
- Para secuencias de comandos muy complejas, incluso puede usar una instancia separada de JMP para monitorear el progreso e incluso interactuar con su secuencia de comandos, consulte Comunicación de socket para obtener y registrar mensajes de secuencias de comandos JMP, R y python .Una copia de JMP (un cliente) puede hacer el trabajo y enviar mensajes a otra instancia de JMP (un servidor).Luego, puede monitorear el proceso en el servidor, o el cliente puede preguntarle al servidor cada vez si debe continuar o apagarse correctamente si desea detenerse antes.Esto incluso puede funcionar con múltiples clientes en diferentes computadoras trabajando en partes separadas de un análisis.